来源:http://www.ixpub.net/thread-682701-1-1.html
在Linux下创建线程时,编译时会出现下面的错误, [root@linuxserver 807]# gcc -o 22 22.c /tmp/cc21HcoW.o(.text+0x4c): In function `main': : undefined reference to `pthread_create' collect2: ld returned 1 exit status |
解决方法:
最关键的是-lpthread 根据错误 /tmp/cc21HcoW.o(.text+0x4c): In function `main': : undefined reference to `pthread_create' collect2: ld returned 1 exit status 可以看出是在ld的时候系统无法找到pthread_create函数。也就是说编译器在link得时候找不到其中的一个使用库的函数。 如果差pthread_create的话可以发现其在pthread.so中,所以需要增加 -lpthread编译参数,告诉linker在link的时候使用pthread模块 |