8000 GitHub - ChungZH/poac: A package manager for C++, like Cargo for Rust.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
/ poac Public
forked from cabinpkg/cabin

A package manager for C++, like Cargo for Rust.

License

Notifications You must be signed in to change notification settings

ChungZH/poac

 
 

Repository files navigation

poac

Description

Poac is a package manager for C++ users.

Poac can download project's dependencies and compile a project. Please see poac.pm, installation instructions, and The Poac Book for more details.

⚠️ Caution! Currently in development and cannot be used.

Demo

By using Poac, you can create a C++ project, build sources, and execute an application:

Poac Demo

Supported Operating Systems

Linux macOS
GitHub Actions Linux Build GitHub Actions macOS Build

Please see 1.1. Installation · The Poac Book for more information about supported OS.

Code Status

  • GitHub: GitHub Release Version Github All Releases GitHub License FOSSA Status

  • Code Coverage: Coverity Scan Build Status codecov

  • Code Quality: Codacy Badge Language grade: JavaScript CodeFactor

Installation

Packaging status

Easy install

curl -fsSL https://sh.poac.pm | bash

For Arch Linux users, there are AUR packages: poac, poac-devel-git, and poac-git

Manual install (Build)

Poac requires the following compilers, tools, and packages to build:

compilers

  • Compilers which support C++20

tools

packages

The packages with names in italics are not needed installing before the following commands because they will be automatically installed when configuring by CMake.

After you prepared the requirements, you can build Poac using the following commands:

$ git clone https://github.com/poacpm/poac.git
$ cd poac
$ mkdir build && cd $_
$ cmake .. -DCMAKE_BUILD_TYPE=Release
$ make # or ninja
$ make install

Why Poac?

I often see that C++ was said to be a complex language, and I saw many people shunned it just because of C++. It is thought that it is hard to construct a C++ environment, there is no definitive package manager, and the strange syntax of build systems such as CMake are the causes that make us feel hesitant.

By developing a package manager and a build system, which have an intuitively easy-to-use interface like npm and Cargo, and make users be able to develop applications and libraries without being aware of CMake, developers will be able to focus on learning C++ without stumbling. I also plan to implement integration with many other build systems and package managers, so you should be able to switch seamlessly.

Contributing

Please see CONTRIBUTING.md. You can also find the useful architecture documentation.

License

Poac is licensed under the terms of the Apache License version 2.0.

Please see LICENSE for details.

FOSSA Status

Third-party software

About

A package manager for C++, like Cargo for Rust.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 95.0%
  • CMake 4.4%
  • Shell 0.6%
0