cmake编译缺失pthread_create等thread库解决方案

8,035次阅读
没有评论

在使用 cmake 来编译项目时, 明明在 CMAKE_CXX_FLAGS 项中设置了 -lpthread 项目, 在运行生成 makefile 时确实也看到了有 -lpthread, 但还是报错: 对‘pthread_create’未定义的引用, 简直是日了狗了 …
后来 google 到了答案, 如果是 cmake 项目需要修改 Cmakefile.txt, 增加以下内容

find_package(Threads)
target_link_libraries (${PROJECT_NAME} ${CMAKE_THREAD_LIBS_INIT})

果然, 加上后就解决问题了,makefile, 只是把 -lpthread 移到了最后, 如果只是动 CMAKE_CXX_FLAGS-lpthread是紧根着 g ++ 后, 也许这样不起作用 ….

正文完
 0
评论(没有评论)