Undefined reference to‘pthread_create‘

在使用 pthread_create() 函数在C程序中创建线程时,有时候会出现类似以下的错误
Undefined reference to‘pthread_create‘

解决方法

  1. 首先确保 有头文件 pthread.h (#include <pthread.h>)
  2. 在使用gcc编译程序时,在命令末尾加上 -pthread,如 gcc -o test test.c -pthread

Note

有些人建议在编译程序时加上 -lpthread。这其实是平台差异,见Compiling Threaded Programs
Undefined reference to‘pthread_create‘
根据不同的编译器/平台,选择不同的方法。

参考文章

上一篇:c++面试高频题-速记版


下一篇:多线程——(2.线程安全)