undefined reference to `pthread_create'

pthread_create()


头文件


#include<pthread.h>

函数声明


int pthread_create(pthread_t*restrict tidp,const pthread_attr_t *restrict_attr,void*(*start_rtn)(void*),void *restrict arg);

返回值


若成功则返回0,否则返回出错编号

 问题出现:


在链接 pthread_create 的时候出现:undefined reference to `pthread_create'

 问题原因:


thread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创        建线程,以及调用 pthread_atfork()函数建立fork处理程序时,需要链接该库。

 问题解决:


在链接的时候加-lpthread

# gcc -g test.c -o test  -lpthread

标签:C/C++, Linux

评论已关闭