gpt4 book ai didi

c++ - with -lpthread,g++编译器错误, "undefined reference to "信号量调用如 `sem_open'

转载 作者:IT王子 更新时间:2023-10-29 00:53:18 24 4
gpt4 key购买 nike

我是 posix 线程库的新手,我尝试使用以下教程编译示例代码:

g++ -lpthread agreement.cpp -o agreement

但是我无法编译代码并收到以下错误消息:

a3q2.cpp:(.text+0x7e): undefined reference to `sem_open'
a3q2.cpp:(.text+0xab): undefined reference to `sem_wait'
a3q2.cpp:(.text+0x290): undefined reference to `sem_post'
a3q2.cpp:(.text+0x2af): undefined reference to `sem_close'
a3q2.cpp:(.text+0x2bb): undefined reference to `sem_unlink'
collect2: ld returned 1 exit status
make: *** [a3q2_exe] Error 1

我知道编译工作需要 -lpthread,但是我可能需要其他选项来解决这个问题吗?如果不是,我该如何安装“正确的”pthread 库?

感谢您的帮助!

最佳答案

您需要编译选项 -pthread(如果您真的使用 pthreads)。如果您只需要它们在 librt 中的那些功能,那么请使用 -lrt

关于c++ - with -lpthread,g++编译器错误, "undefined reference to "信号量调用如 `sem_open',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11111291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com