首页 > 其他分享 >CMake使用指南

CMake使用指南

时间:2022-09-26 15:23:01浏览次数:47  
标签:CMake -- xxx 源文件 source 文件夹 cpp 使用指南

单文件编译

添加版本号

project(xxx VERSION 0.1.0)

指定C++版本

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)

多文件编译

  • 将所有头文件放到Include文件夹下,源文件放到Source文件夹下
  • 用include_directories() 包含头文件
  • 利用aux_source_directory() 引用所有的源文件,并保存到一个变量中(这个函数可以递归找子文件夹下的源文件吗?追加源文件呢?)

例子

# 文件夹结构长这样
# --Include
# 	|--xxx.h
# --Source
# 	|--xxx.cpp
# --main.cpp
cmake_minimum_required(VERSION 3.20)
project(TinyMS VERSION 0.1.0)

include_directories(./Include) 				# 包含头文件
aux_source_directory(./Source SOURCE_FILE) 	# 搜索source下的所有源文件
aux_source_directory(./ SOURCE_FILE)		# 搜索main.cpp

add_executable(TinyMS ${SOURCE_FILE})		# 编译项目

编译成库

  • 所有库文件都放到一个文件夹里面

  • 这个库文件夹包含一个新的CMakeLists.txt文件

     add_library(库名 xx.cpp)
    
  • 在顶级CMakeLists.txt中添加库

    add_subdirectory(库名)
    add_executable(xxx xx.cpp)
    # 如果是动态库就把PUBLIC改成SHARE
    target_link_libraries(xxx PUBLIC 库名)
    
    

在cmake中创建宏定义

引用第三方库

新建一个ThirdPart文件夹,把所有的`

标签:CMake,--,xxx,源文件,source,文件夹,cpp,使用指南
From: https://www.cnblogs.com/destinyzk/p/16661651.html

相关文章

  • OpenCV CMake windows下 C++ OpenCV配置及x86编译(傻瓜式教程)
    本傻瓜教程需要的环境如下:IDE:vs2015或vs2017, windows10或11关于vs的版本,个人觉得不管是社区版个人版还是企业版,对于我们工作学习的个人来说都一样,......
  • CMAKE的学习
    下面我们来介绍CmakeCmake我们着重介绍一下CMAKE,是因为CMAKE现在用的人比MAKEFILE多一些,也更好理解,编写一些。1安装cmake1.1卸载已经安装的旧版的CMAKE【非必需】a......
  • 关于VScode中GDB调试和cmake配合使用的方法
    关于VScode调试GDB的说明      Hello,各位看官好,小弟最近在做嵌入式的项目,那么嵌入式的项目有三个很重要的工具,一个就是VScode,一个就是GDB,还有一个就是CMake工具......
  • Rstudio,separate函数使用指南
    separate将一列数据分割为两列数据今天被困扰了一个多小时,是关于分隔符的问题。  想要将SNP1Loc这一列按照(进行分割,记得之前使用过separate进行分割,但是今天操作了......
  • Net runtime Cmake编译错误解决
          部分截图单独编译D:\SourceCode\Net\Runtime2\src\coreclr\build-runtime.cmd开始删除目录下的CMake的文本文件,没报开始的错误,继续,报错提示生产的lo......
  • 在windows系统中使用cmake添加本地openssl(cmakeList.txt配置)
      1cmake_minimum_required(VERSION3.17)2project(05_OpenSSLC)34set(CMAKE_C_STANDARD99)567#定义两个变量,表示头文件路径和库路径8s......
  • 03 最小CMake项目
    03最小CMake项目所有CMake项目都从一个CMakeLists.txt文件开始,此文件应该放在源代码树的最顶层目录下。可以将CMakeLists.txt想象成CMake项目文件,定义了从源和目标的构建......
  • cmake 入门笔记
    以下内容为本人的著作,如需要转载,请声明原文链接微信公众号「englyf」https://www.cnblogs.com/englyf/p/16667896.html1.cmake是什么?这些年大型C/C++工程都纷纷转......
  • cmake cache变量_反复研究好几遍,我才发现关于 CMake 变量还可以这样理解!
    反复研究好几遍,我才发现关于CMake变量还可以这样理解!​ 摘要:本文记录一下CMake变量的定义、原理及其使用。CMake变量包含NormalVariables、CacheVariables......
  • cmake语法手册及教程
    一,cmake变量引用的方式:前面我们已经提到了,使用${}进行变量的引用。在IF等语句中,是直接使用变量名而不通过${}取值二,cmake自定义变量的方式:主要有隐式定义和显......