cmake-examples
CMake
Our great sponsors
cmake-examples | CMake | |
---|---|---|
25 | 32 | |
11,944 | 6,434 | |
- | 1.6% | |
0.0 | 10.0 | |
2 months ago | 5 days ago | |
CMake | C | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cmake-examples
-
Anyone else get frustrated when a block of time you wanted to spend to learning code instead goes into why some software isn’t working right on your computer?
The downside for CMake is that it’s famously crappy in its own way and the internet is full of bad examples. This isn’t terrible: https://github.com/ttroy50/cmake-examples/blob/master/01-basic/H-third-party-library/CMakeLists.txt
- Thom Troy's CMake examples.
-
confusion when trying to understand the use cases of dynamic and static libraries
I found a github repo I'm going to use as tutorial: https://github.com/ttroy50/cmake-examples
-
Please review my code (2.0)
And one of the best ressources ever to get started with Cmake is this repo: https://github.com/ttroy50/cmake-examples
- help with making a cmake file
- How do I link fmt library to my project?
-
CMAKE for Beginners
I would recommend having a look at this repository
- Using Visual Studio for Cpp Dev
-
IDE recommendations and usage
For projects with external dependencies, I suggest starting with a lightweight editor like Atom, Sublime Text or VSCode without plugins. Try building with command line CMake, see here for some basics: https://github.com/ttroy50/cmake-examples
- Issues setting up environment on Linux Ubuntu
CMake
-
Installer script for CMake, Ninja, and Meson
I thought I would share my custom installer script for the latest GitHub versions of CMake, Ninja, and Meson.
-
CMake can't find glut
The same thing probably applies if you use the FindGlut.cmake module which is documented here: https://cmake.org/cmake/help/latest/module/FindGLUT.html
-
FFmpeg Build Script that uses API calls to get the latest versions of each package + extra modules
building cmake - version 3.26.3 ==================================== Downloading https://github.com/kitware/cmake/archive/refs/tags/v3.26.3.tar.gz as cmake-3.26.3.tar.gz Download Completed File extracted: cmake-3.26.3.tar.gz $ ./configure --prefix=/root/ffmpeg-build-script/workspace --parallel=40 --enable-ccache -- -DCMAKE_USE_OPENSSL=OFF $ make -j 40
-
I can't run my c++ project having Python.h header using cmake in Windows
find_package(Python3 ...) will look for a file FindPython3.cmake shipped with CMake. I urge you to try to go over its contents to get an idea of what it does underneath.
-
using a library from a github repository in cmake project
The file FindSomePKG.cmake (module approach) is supposed to be written either by you (you write it manually and put in a cmake subdirectory in your git repo) or it's an official package file shipped along with CMake, e.g FindOpenSSL.cmake with documentation here.
- Install CMake on Windows
-
Install MariaDB from Source Code on Ubuntu
sudo apt-get install build-essential libncurses5-dev gnutls-dev bison zlib1g-dev ccache libssl-dev # Get cmake # Downloaded under ~/ wget https://github.com/Kitware/CMake/releases/download/v3.25.2/cmake-3.25.2.tar.gz cd cmake-3.25.2 ~/cmake-3.25.2 $ ./bootstrap ~/cmake-3.25.2 $ make ~/cmake-3.25.2 $ sudo make install
-
Adding “invariant” clauses to C++ via GCC plugin to enable Design-by-Contract
Note that `assert`s are disabled if you define the macro `NDEBUG`, e.g. https://godbolt.org/z/hMWo8KM7q
CMake adds these flags to release builds: https://github.com/Kitware/CMake/blob/e1eacbe2c522a8bf9a82af...
Would be nice to have a non-macro solution for controlling behavior at configure time, but the `NDEBUG` macro is basically already your `DEBUG` constexpr.
-
CLion 2022.3 Released!
It's open-source. It might get merged in!
-
Couchbase Node SDK on Docker
FROM node:16 WORKDIR /cmake COPY cmake-3.25.0-rc4-linux-x86_64.sh ./ # OR # RUN apt update && apt install -y g++ wget bash # RUN wget https://github.com/Kitware/CMake/releases/download/v3.25.0-rc4/cmake-3.25.0-rc4-linux-x86_64.sh RUN ./cmake-3.25.0-rc4-linux-x86_64.sh --skip-license && rm cmake-3.25.0-rc4-linux-x86_64.sh ENV PATH="$PATH:/cmake/bin" WORKDIR /app RUN npm i [email protected] COPY package.json . COPY package-lock.json . RUN npm --verbose i COPY . . RUN npm --verbose run build
What are some alternatives?
utility-boilerplate-qt - 🚀Boilerplate for C++ utility application based on Qt5
meson - The Meson Build System
ModernCppStarter - 🚀 Kick-start your C++! A template for modern C++ projects using CMake, CI, code coverage, clang-format, reproducible dependency management and much more.
gcc
cmake-git-version-tracking - Embed Git metadata in a C/C++ compatible static library using CMake (e.g. commit ID, author, date, and message).
ninja - a small build system with a focus on speed
Google Test - GoogleTest - Google Testing and Mocking Framework
awesome-bazel - A curated list of Bazel rules, tooling and resources.
pybind11 - Seamless operability between C++11 and Python
bazel-remote - A remote cache for Bazel
cmake-init - The missing CMake project initializer
Boost.Beast - HTTP and WebSocket built on Boost.Asio in C++11