背景
代码上库,需要用cmake来编译整个项目;
问题及解决
由于项目较小,之前的编译都是直接通过命令行来实现的:
编译选项:
-std=c++11 -lpthread -O3 -g
在CMakeLists.txt里添加了:
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
add_compile_options(-std=c++11 -O3)
但是在编译时,还是提示 undefined reference to pthread_create
后来参考了这个链接
CMake undefined reference to `pthread_create
在最后又添加了:
target_link_libraries (tcp_filter ${CMAKE_THREAD_LIBS_INIT})
谢谢分享
另外,对于我这种cmake小白,也可以参考这个链接:
Linux下CMake简明教程
很不错的入手教程