当前位置: 首页 > 软件库 > 开发工具 > >

cmake-cookbook

CMake Cookbook recipes.
授权协议 View license
开发语言 C/C++
所属分类 开发工具
软件类型 开源软件
地区 不详
投 递 者 傅雪松
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

License: MIT

AppVeyorCircleCI

GitHub issuesGitHub forksGitHub stars

CMake Cookbook

This repository collects sources for the recipes contained in theCMake Cookbookpublished by Packt and authored by Radovan Bast andRoberto Di Remigio

Table of contents

Chapter 1: From a Simple Executable to Libraries

Chapter 2: Detecting the Environment

Chapter 3: Detecting External Libraries and Programs

Chapter 4: Creating and Running Tests

Chapter 5: Configure-time and Build-time Operations

Chapter 6: Generating Source Code

Chapter 7: Structuring Projects

Chapter 8: The Superbuild Pattern

Chapter 9: Mixed-language Projects

Chapter 10: Writing an Installer

Chapter 11: Packaging Projects

Chapter 12: Building Documentation

Chapter 13: Alternative Generators and Cross-compilation

Chapter 14: Testing Dashboards

Chapter 15: Porting a Project to CMake

  • 源码链接:cmake-cookbook/chapter-03/recipe-05/cxx-example-3.5 at master · qijitao/cmake-cookbook · GitHub 要想支持OpenMP,主要是在编译和链接时使用-fopenmp (下面代码中的OpenMP_CXX_FLAGS),为此需要检测OpenMP package,具体如下所示: # set minimum

  • cmake编译时报找不到“Eigen3”错误: root@kirinai-15-g5000pro:/workspace/cmake/cmake-cookbook/chapter-02/recipe-06/cxx-example# cmake . -- The CXX compiler identification is GNU 7.5.0 -- Check for working CXX comp

  • 1、在cmake中调用python命令的方法 如下所示,execute_process可以包含子定义的指令,详细参见execute_process — CMake 3.26.3 Documentation # Find NumPy location execute_process( COMMAND ${PYTHON_EXECUTABLE} "-c" "import re, numpy;

  • 无法像make clean一样一键清除camke编译结果; 但是可以把CMakeCache.txt删除,再重新cmake CMakeLists.txt 就是触发完整的重新编译; 另外一种方法是创建build文件夹,然后在bulid目录下执行 cmake ../CMakeLists/txt;然后可以方便把build目录下的所有生成结果删除,为了更方便,可以制作成shell脚本,例如: :: 删除bu

  • 疑问:为什么静态库编译时也可以使用-fPIC?         -fPIC是产生全局偏移的?难道静态库时也可以使用全局偏移?  问题描述:geometry是STATIC的,但是编译flags里面有-fPIC。          # set minimum cmake version cmake_minimum_required(VERSION 3.5 FATAL_ERROR) # project

  • https://chenxiaowei.gitbook.io/cmake-cookbook/

  • 遇到找不到Fortran编译器的问题: root@kirinai-15-g5000pro:/workspace/cmake/cmake-cookbook/chapter-03/recipe-04/cxx-example# cmake . -- The CXX compiler identification is GNU 7.5.0 -- The C compiler identification

  •    学习cmake的时候非常的蛋疼,觉得他的官方文档也没有scons写的好,也没有找到其他合适的书籍,今天在github看的一个觉得写得不错,本人只看了前面几章:https://github.com/dev-cafe/cmake-cookbook

  • unitTest framework ctest + manual test(no test suite) cmake_minimum_required(VERSION 3.5 FATAL_ERROR) project(recipe-01 LANGUAGES CXX) # require C++11 set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_E

  • Condition Variable # use lib or use source : use lib by default(OFF) cmake_minimum_required(VERSION 3.5 FATAL_ERROR) project(recipe-04 LANGUAGES CXX) # introduce a toggle for using a library

  • cmake helper and apt-get cmake helper cmake installer itself may include some tools (FindXX.cmake) to help check 3pp installed on host manualy install 3pp c++ lib , boost #install 3pp package boost

  • configure time command cmake_minimum_required(VERSION 3.5 FATAL_ERROR) project(recipe-02 LANGUAGES NONE) find_package(PythonInterp REQUIRED) # this is set as variable to prepare # for abstraction u

 相关资料
  • CMake 是一个跨平台的自动化构建系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件,如 Unix 的 Makefile 或Windows Visual C++ 的 projects/workspaces 。文件 CMakeLists.txt 需要手工编写,也可以通过编写脚本进行半自动的生成。CMake 提供了比 autoconfig 更简洁的语法。

  • ?> Hello world,世界 你好 本节选择了一个最简单的例子 Helloworld 来演练一下 cmake 的完整构建过程,本节并不会深入的探讨 cmake,仅仅展示一个简单的例子,并加以粗略的解释。我们选择了Everest Linux 作为基本开发平台,因为这个只有一张 CD 的发行版本,包含了 gcc4.2/gtk/qt3/qt4等完整的开发环境,同时,系统默认集成了 cmake 最新

  • cmake-conan CMake wrapper for the Conan C and C++ package manager. This cmake module allows to launch conan install from cmake. The branches in this repo are: develop: PR are merged to this branch. La

  • learning-cmake This is a simple CMake tutorial project which contains some different scenarios. hello-world: Demo a simplest CMake project. hello-world-clear: Separate the output files and src files.

  • switch-cmake Extensible CMake toolchain for Switch homebrew development with devkitA64 and libnx. Table of Contents Introduction Why CMake Quick Start Switch Homebrew File Formats devkitPro Ecosystem

  • A CMake toolchain file for iOS (+ Catalyst), watchOS, tvOS and macOS development with full simulator support and toggleable options! NEW! Experimental Catalyst support (iOS on macOS) macOS support and