.. | ||
cmake | ||
doc | ||
src | ||
tests | ||
.clang-format | ||
.gitignore | ||
CMakeLists.txt | ||
conanfile.py | ||
LICENSE | ||
README.org |
PROJECTNAME
PROJECTNAME is a C++17 project written for and built with CMake and Ninja.
How to build PROJECTNAME
You will ned to have Ninja and Conan installed. To install Ninja, install the
appropriate package offered by your package manager (ninja-build
on Debian,
ninja
on Arch Linux and Void Linux), and to install conan, use pip
.
pip install --user conan
This project is built with conan, ninja and cmake using clang-7 for C++17. To use it, first install clang-7 and lldb 7, then run this:
conan profile new default --detect
conan profile update settings.compiler=clang default
conan profile update settings.compiler.version=7.0 default
conan profile update settings.compiler.libcxx=libstdc++11 default
conan profile update env.CC=/bin/clang default
conan profile update env.CXX=/bin/clang++ default
If you do not wish to overwrite your default
profile, you can instead create a
new one, for instance clang
. To do so, write the name of your new profile (in
this example clang
) instead of default
in the commands shown above.
Then, To build and run the program, go to the root of the project and run this:
mkdir build && cd build
conan install .. --build missing
cmake -DCMAKE_CXX_COMPILER=clang++ .. -G Ninja
cmake --build .
If you want to use another profile than your default one, you should run the following line instead of the second line:
conan install .. --build missing --profile <your_profile>
If you wish to build the project’s tests in addition to the project itself, you
can add the option -DTESTS=True
to the first cmake
command to build the
project’s tests too.
cmake -DCMAKE_CXX_COMPILER=clang++ -DTESTS=True .. -G Ninja
If you do not wish to build your project with Ninja but with another generator,
such as Unix Makefiles, simply replace Ninja
in the second to last cmake
command with the name of your generator. For instance:
cmake -DCMAKE_CXX_COMPILER=clang++ .. -G "Unix Makefiles"
You can still build your project by running cmake --build .
or by running
make
manually.
Credits
Awesome C++ Template by devkoriel.