为什么这个信号量代码失败了?

时间:2010-11-30 17:13:22

标签: c linux unix semaphore

#include <semaphore.h>


sem_t mutex;


int main (int argc, char * argv[])
{



sem_init (&mutex,0,1); 

}

我得到了:

/tmp/ccAMFxDX.o: In function `main':
programaservidor.c:(.text+0x86): undefined reference to `sem_init'
collect2: ld returned 1 exit status

3 个答案:

答案 0 :(得分:5)

根据sem_init()手册页

  

与-lrt或-pthread链接。

gcc your_code.c -lpthread -o your_code

一样

答案 1 :(得分:1)

如手册页所述,您必须与-lrt-pthread相关联。

答案 2 :(得分:0)