编译pthread代码时使用-lpthread和-pthread选项

时间:2017-02-03 06:34:48

标签: pthreads

我尝试使用g ++编译简单的pthreading代码。

据我所知,我应该使用-lpthread,但它无法生成可执行文件。

下面是错误代码(似乎libpthread没有链接):

undefined reference to `pthread_create'

然而,有趣的是,当我使用选项-pthread进行编译时,它已正确编译并且完全正常运行。

我的g ++版本是gcc版本5.2.1 20151010(Ubuntu 5.2.1-22ubuntu2)。

1 个答案:

答案 0 :(得分:0)

-l选项表示编译器将程序与命名库链接,因此-lpthread表示链接pthread库。
-pthread是构建所需的选项 gcc中的线程程序。
如果可用,-pthread是首选。