CMake
1.简单的cmake编写
CMakelists.txt :
cmake_minimum_required(VERSION 3.16)
project(x)
add_executable(x x.cpp)
//x.cpp
#include <iostream>
using namespace std;
int main()
{
cout<<"hello"<<endl;
return 0;
}
先执行cmake 生成makefile 再执行make生成可执行程序。
2.其他命令
现在有 a.cpp b.cpp x.cpp
cmake_minimum_required(VERSION 3.16)
project(x)
set(demo a.cpp b.cpp x.cpp) #将所有文件设置为一个变量名 demo
add_executable(x ${demo})#使用变量名字
3.c++标准添加
set(CMAKE_CXX_STANDARD 11)#C++11
4.输出路径
set(home /home/project)
set(EXCUTABLE_OUTPUT_PATH ${home}/bin)
5.搜索文件
aux_source_directory(${PROJECT_SOURCE_DIR} SRC)
add_executable(x ${SRC})
将PROJECT_SOURCE_DIR 路径下的所有源文件保存到变量SRC,这个宏就是执行cmake
然后再执行add_executable(x ${SRC})
第二种方式:
file(GLOB SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)
CMAKE_CURRENT_SOURCE_DIR = CMakeLists.txt路径
/*.cpp 目录下所有的.cpp文件
6.指定头文件
src/ a.cpp b.cpp
include/ a.h
..
file(GLOB SRC ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp)
include_directories(${PROJECT_SOURCE_DIR}/include)