Software Alternatives, Accelerators & Startups

CMake

CMake is an open-source, cross-platform family of tools designed to build, test and package software.

CMake

CMake Reviews and Details

This page is designed to help you find out whether CMake is good and if it is the right choice for you.

Screenshots and images

  • CMake Landing page
    Landing page //
    2022-09-21

Features & Specs

  1. Cross-platform support

    CMake is designed to support multiple operating systems including Windows, macOS, and Linux. This allows developers to write platform-independent CMake scripts.

  2. Build tool agnostic

    CMake can generate build files for a variety of build systems including Makefiles, Ninja, and Visual Studio solutions. This means developers are not tied to a specific build tool.

  3. Large community and extensive documentation

    CMake has a large user base and an extensive amount of documentation and tutorials available which can be helpful for new and experienced users alike.

  4. Integrated testing support

    CMake includes support for testing frameworks such as CTest, which allows for automated testing of code during the build process.

  5. Modular and scalable

    CMake is highly modular, enabling users to create reusable and maintainable code by organizing CMake scripts into libraries and modules.

Badges

Promote CMake. You can add any of these badges on your website.

SaaSHub badge
Show embed code
SaaSHub badge
Show embed code

Videos

CMake for Dummies

CppCon 2017: Mathieu Ropert “Using Modern CMake Patterns to Enforce a Good Modular Design”

Hunter, a CMake driven package manager for C/C++ projects - Daniel Friedrich - Lightning Talks

Social recommendations and mentions

We have tracked the following product recommendations or mentions on various public social media platforms and blogs. They can help you see what people think about CMake and what they use it for.
  • DeadLock: Research Results & Tech Stack
    All this C++ project can't be ran as simple C++ code, so I will be building this whole package using CMake. It will streamline building this project onto other computers. - Source: dev.to / 20 days ago
  • Master This Feature of DevEco Studio to Efficiently Implement ArkTS and C++ Glue Code
    For knowledge in this aspect, you can refer to the relevant documents of the CMake build tool: https://cmake.org/. - Source: dev.to / 6 months ago
  • Creating a Native Desktop GUI Using C++ with GTK
    I used CMAKE to define the build configurations. I find it very convenient that CMAKE generates the Makefile on Linux and can also create a Visual Studio project on Windows. - Source: dev.to / 8 months ago
  • Top 7 C++ Tools to explore in 2024 if it's not already the case.
    CMake stands for "Cross-platform Make" and is an open-source, platform-independent build system. It's designed to build, test, and package software projects written in C and C++, but it can also be used for other languages. Here's an overview of CMake and its features:. - Source: dev.to / over 1 year ago
  • My first Software Release using GitHub Release
    When doing research for this lab exercise I looked at both vcpkg and conan. Both are package managers that would automate the installation and configuration of my program with its dependencies. However, when it came to releasing and sharing my program my options were limited. For example, the central public registry for conan packages is conan-center, but these packages are curated and the process is very... - Source: dev.to / over 1 year ago
  • A little help for a C++ newbie
    Install the CMake program using your system package manager, e.g. Sudo apt-get install cmake. Source: over 1 year ago
  • Questions Regarding working with Mingw_w64, MSYS2, and CMake on Windows
    Oh I just assumed it was talking about the one from cmake.org since I was having trouble. I can now confirm that mingw-w64-cmake and the binary from cmake.org do operate in mostly identical ways. Source: about 2 years ago
  • Questions Regarding working with Mingw_w64, MSYS2, and CMake on Windows
    Then looking at any one of the many examples provided on cmake.org, it's clearly a viable way to do set(CMAKE_*), (e.g., set(CMAKE_CXX_STANDARD 11) Set(CMAKE_CXX_STANDARD_REQUIRED True)). Of course, another way to set these variables is to use the -D flag as you suggested, but I was just wondering why you would prohibit using set(CMAKE_*). Source: about 2 years ago
  • Creating Whisper Video Captions: OpenAI VTT
    Before you can use whisper.cpp, you need to clone the repo and compile the C++ code into a binary. We use CMake to help build the binary. CMake is cross-platform tooling useful when working with C++. It generates a make file, setting compiler paths for any third-party libraries. On macOS, you can install CMake with Homebrew. We will also need to have FFmpeg installed locally, so let’s feed two birds with one... - Source: dev.to / about 2 years ago
  • Learning C++ gives me anxiety, is this normal?
    You should use CMake, not manually write makefiles. Source: about 2 years ago
  • How to Debug WASI Pipelines with ITK-Wasm
    The CMake-based, itk-wasm build system tooling enables the same C++ build system configuration and code to be reused when building a native system binary or a WebAssembly binary. As a result, native binary debugging tools, such as GDB, LLDB, or the Visual Studio debugger can be utilized. - Source: dev.to / over 2 years ago
  • Hello Wasm World!
    Next, provide a CMake build configuration at CMakeLists.txt:. - Source: dev.to / over 2 years ago
  • Day 9: Making Cool Raspberry Pi Projects even Cooler with Voice AI (4/4)
    Compatibility C99-compatible compiler AccessKey Grab your AccessKey from Picovoice Console, if you haven't. It's free! Requirements CMake version 3.4 or higher Microphone Demo The Cobra microphone demo opens an audio stream and detects the presence of speech. Commands are run from the root of the repo. Build Use CMake to build the Cobra microphone demo target:. - Source: dev.to / over 2 years ago
  • How to raise the quality of scientific Jupyter notebooks
    Since ITK's inception in 1999, there has been a focus on engineering practices that result in high-quality software. High-quality scientific software is driven by regression testing. The ITK project supported the development of CTest and CDash unit testing and software quality dashboard tools for use with the CMake build system. In the Python programming language, the pytest test driver helps developers write... - Source: dev.to / over 2 years ago
  • Confusion about make dependency in install docs
    I just installed your LunarVim and am very exited to test it — looks amazing! On your webpage, you've listed, amoung others, having make installed as a requirement. The link, however, points to cmake.With cmake installed I ran into the error that "make" cannot be found.So for newbies like me, I suggest, thinking about either pointing to GNU make in your docs (if that was meant) or (if cmake was meant) to drop a... Source: over 2 years ago
  • I've Been Laid Off. What Now?
    Zig's potential is that it is pretty easy to write cross-platform code with it. Normally writing cross-platform code involves using a cross-compiler setup where you write code that targets another platform that's different than your host system. It requires using compilers that have ABIs of the target system, which is not something many have readily available. Sometimes you're often left having to do this yourself... - Source: dev.to / over 2 years ago
  • Do we not need to link standard libraries?
    I am making my way through the CMake tutorial found on cmake.org. Source: over 2 years ago
  • A Makefile Template for Small Projects
    NOTE: For bigger projects with many folder and subfolders it may be better to use tools like CMake, which is a tool that creates Makefile's for you! - Source: dev.to / over 2 years ago
  • OSD600 Lab 10
    The file has a bunch of fields with dummy info that need to be filled in. The next step requires a CMakeLists.txt file as well as CMake, of which how to create is a process of its own. - Source: dev.to / over 2 years ago
  • Building C++ projects: Know what you build, how you build it and where you build it.
    Arguably, CMake is the standard tool to structure and build C++ projects. The tool is very easy and intuitive to use. But sometimes it might get tricky and some unexpected problems might pop up. And it might take a significant amount of time to understand what is going on. In this example I will show one of such problems I encountered recently. I tried to reproduce the problem with a very much simplified project... - Source: dev.to / over 2 years ago
  • Why to use C++ in 2022?
    Writing makefiles is difficult. Many accept CMake as the de facto standard to write build scripts, but it's clearly not the case. Many don't like it due to its syntax and there are many different ways to generate your build scripts. Many companies have their own systems - including Amadeus. - Source: dev.to / over 2 years ago

Do you know an article comparing CMake to other products?
Suggest a link to a post with product alternatives.

Suggest an article

CMake discussion

Log in or Post with

Is CMake good? This is an informative page that will help you find out. Moreover, you can review and discuss CMake here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.