CMake作为跨平台常用项目构建工具,把最近使用到的做个简要记录
1.CMake总体介绍
cmake主要依赖CMakeLists.txt来构建,同一个解决方案下的其他CMakeLists.txt也可以通过主CMakeLists.txt来引用,类似分模块构建。
2.常见用法
①构建方法--命令行
CMake可以通过命令行或者可视化界面进行项目的构建,构建命令如 cmake -DPARAVIEW_USE_PYTHON=ON -DPARAVIEW_USE_MPI=ON -DVTK_SMP_IMPLEMENTATION_TYPE=TBB -DCMAKE_BUILD_TYPE=Release ../
这个命令执行cmake构建且附加了对应构建参数,其中-D后面代表构建参数,../代表CMakeLists在上一级目录。
②构建方法--可视化工具
可视化界面就简单了,管理员身份打开CMake界面。直接选中最外层的CMakeLists.txt所在目录作为源码路径,再选择一个空文件夹作为构建目录,执行步骤3,点击configure,直至没有出现红色再点击步骤5,等待构建结束即可。
③构建方法--VS
打开vs,使用无代码启动,在文件菜单下找到打开菜单,选择cmake文件打开,等待构建完成后在转到cmake视图,即可看到当前解决方案下的所有项目。
3.常见语法(编写模板)
1.cmake最低版本 cmake_minimum_required(VERSION 3.15)
2.项目名 (dll 或者exe名) project(Name)
3.连接依赖库 target_link_libraries(a b c) (动态库) link_libraries(静态库)
4.生成二进制文件 生成执行文件 add_executable(app ${src}) 两个参数分别是 1可执行程序名 2生成所需资源文件。生成库文件add_library(dll SHARED/STATIC ${SRC}) ,库文件默认静态。
其他:include(xxx) 作用为包含xxx.cmake 文本文件,相当于将这个文件内容在此展开。使用某一个路径下的xxx.cmake文件常见做法是在cmake自带宏CMAKE_MODULE_PATH添加xxx.cmake路径 。添加子项目add_subdirectory(xxx)