gcc -lpthread无法正常工作

Geo*_*aul 6 c c++ multithreading gcc operating-system

我在我的系统中安装了ubuntu 11.我有使用pthread库的ac程序.Undefined reference to sem_wait()即使我已使用标志编译,我也会收到错误-lpthread.

例如:

gcc -lpthread prog.c
Run Code Online (Sandbox Code Playgroud)

该程序适用于其他ubuntu安装.

Gia*_*ian 12

尝试:

gcc -pthread
Run Code Online (Sandbox Code Playgroud)

而不是-lpthread.我相信,差异很大.后者是链接libpthread,前者是连接libpthread和其他一些东西!

sem_wait是librt的一部分,所以你也可以使用gcc -lrt,但-pthread为你(以及其他一切!)做到这一点.