苏州那家公司做网站好,抖音代运营收费20万,做电器的集团网站,公司网站制作的公司一.简介
CMake是开源、跨平台的构建工具#xff0c;可以让我们通过编写简单的配置文件去生成本地的Makefile#xff0c;这个配置文件是独立于运行平台和编译器的#xff0c;这样就不用亲自去编写Makefile了#xff0c;而且配置文件可以直接拿到其它平台上使用#xff0c;…一.简介
CMake是开源、跨平台的构建工具可以让我们通过编写简单的配置文件去生成本地的Makefile这个配置文件是独立于运行平台和编译器的这样就不用亲自去编写Makefile了而且配置文件可以直接拿到其它平台上使用无需修改非常方便。
二.Cmake安装命令
sudo apt install cmake
cmake -version三.Cmake编译
一般把CMakeLists.txt文件放在工程目录下使用时先创建一个叫build的文件夹这个并非必须因为cmake命令指向CMakeLists.txt所在的目录例如cmake . . 表示CMakeLists.txt在当前目录的上一级目录。cmake后会生成很多编译的中间文件以及makefile文件所以一般建议新建一个新的目录专门用来编译然后执行下列操作
cd build
cmake . .
make
其中cmake . . 在build里生成Makefilemake根据生成makefile文件编译程序make应当在有Makefile的目录下根据Makefile生成可执行程序或共享库。
四.动态库和静态库的编译控制
src目录下的CMakeLists.txt
# 寻找该目录下所有的源代码文件并将列表存储在SRC_LIST中
aux_source_directory(. SRC_LIST)# 指定库文件输出的存放路径
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib)# 生成静态库文件
add_library(swap_lib STATIC ${SRC_LIST})项目主目录的CMakeLists.txt
# 指定CMake的最小版本要求
cmake_minimum_required(VERSION 3.0)# 定义工程名称
project(SWAP)# 设置编译参数
add_compile_options(-Wall -stdc11)# 添加头文件搜索路径
include_directories(include)# 添加src子目录
add_subdirectory(src)# 指定可执行文件输出的存放路径
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)# 生成可执行文件
add_executable(swap_cmake main.cpp)# 为可执行文件添加需要链接的库文件
target_link_libraries(swap_cmake swap_lib)