最简单的demo工程如下:
#include <iostream>
#include <string>
int main(int argc,char** argv)
{
std::cout << "hello world" << std::endl;
return 0;
}
文件结构如下,其中include可用来自定义接口功能类。
CMakeLists.txt文件如下:
cmake_minimum_required(VERSION 3.0)
project(MAIN)
set(CMAKE_CXX_STANDARD 11)
add_definitions(-O0 -g3 -ggdb)
include_directories(
./include
)
file(GLOB_RECURSE SRC_CPP ./src/*.cpp)
#${PROJECT_NAME}是工程名MAIN,也可以直接写MAIN
add_executable(${PROJECT_NAME} ${SRC_CPP})
#对于多线程函数需要下面一行代码
#target_link_libraries(${PROJECT_NAME} pthread)
生成可执行文件:创建build文件,产物都放在build里面,便于管理,步骤如下:
test$ mkdir build
test$ cd build
test/build$ cmake .. //生成Makefile
test/build$ make -j //编译Makefile
test/build$. /MAIN //执行可执行文件
附加:
CMake编译工程/第一个CMakeLists.txt(最详细案例演示)_芯辰大海的博客-CSDN博客
【CMake】CMakeLists.txt的超傻瓜手把手教程(附实例源码)_Yngz_Miao的博客-CSDN博客_cmakelists教程