Cmake编译pthreads报错:undefined reference to pthread_create

论坛 期权论坛 脚本     
已经匿名di用户   2022-7-2 22:16   3508   0

当使用Cmake编译多线程程序时,需要手动添加pthread库,如果手动添加,就会报错:

undefined reference to `pthread_create'

出现这个问题的原因是在链接阶段,函数对应的库文件搜索不到,找不到这个函数的具体实现。

解决方式就是在Cmake文件中添加对应的库。

这里需要指定的是Threads库,参考代码

cmake_minimum_required(VERSION 3.16)
project(ThreeWay_MulthThreadDemo)
find_package(Threads)
set(CMAKE_CXX_STANDARD 14)

add_executable(ThreeWay_MulthThreadDemo Multithread-Demo.cpp)
target_link_libraries(ThreeWay_MulthThreadDemo ${CMAKE_THREAD_LIBS_INIT})

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP