2.正文
2.1 模板
#cmake 版本检查
cmake_minimum_required (VERSION 2.8)
#项目名字
project (test)
#设置c++版本
set(CMAKE_CXX_STANDARD 17)
#开启debug
set(CMAKE_BUILD_TYPE "Debug")
#release
#SET(CMAKE_BUILD_TYPE "Release")
#设置头文件路径 -I
include_directories("/usr/include")
#将当前目录下所有.c cpp .h .hpp 文件放入 SRC变量中
aux_source_directory(. SOURCES_FILES)
#将所有源文件编译成test
add_executable(test ${SOURCES_FILES})
#设置要动态连接库的目录
link_directories("/usr/lib")
#链接
target_link_libraries(test libwebsockets.so ) #链接动态库 libwebsockets.so
2.2 target_link_libraries的细节
target_link_libraries是用来把一个tager做链接库的,如下使用:
target_link_libraries(test libwebsockets.so libjansson.so)
和下面的方式等效
target_link_libraries(test -lwebsockets -ljansson)
注意: 链接pthread的时候,应该直接使用 pthread(g++/gcc 对于该选项除了link 会添加一些宏)而不是-lpthread
//等效于-ptherad
target_link_libraries(test pthread)
3.ref
3.1 官方guide
3.2 cmake 添加头文件目录,链接动态、静态库