我在编译c c filename.c时编写了一个小线程程序,在编译期间得到了一些语句,但是当我使用-lpthread(cc filename.c-lpthread)编译时,它被执行了什么-lpthread为什么它是必需的?有人能详细解释一下吗。这会有很大帮助的。

最佳答案

在程序中使用的pthread_create()函数不是基本的C函数,需要使用库。
这就是为什么您必须使用这个命令开关-lpthread
这个gcc命令告诉他在磁盘上的某个地方查找一个名为libpthread的库,并使用它提供线程创建机制。
我建议你读这篇文章来熟悉“图书馆”的概念:http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html

10-08 14:44