gcc -lpthread不工作

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

例如:

 gcc -lpthread prog.c 

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

尝试:

 gcc -pthread 

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

sem_waitsem_wait的一部分,所以你也可以使用gcc -lrt ,但-pthread会为你做这个(以及其他一切!)。