Answers:
采用:
gcc MyProgram.c -o MyProgram -lpthread
并且不要忘记在您的代码中包含POSIX库。它将编译您的代码。
-lpthread
参数man gcc
。但是有一个-pthread
争论。两者都可以在带有gcc-4.8的Ubuntu 14.04上正常工作。
如果要使用GCC或G ++在LINUX中使用pthread.h编译C程序,则必须在compile命令后使用–lpthread选项。
gcc xyz.c -o xyz -lpthread
这里,
gcc是编译器命令(编译器名称)
xyz.c是源文件名。
-o是创建objcect文件的选项。
xyz是对象(二进制)文件的名称。
-lpthread是pthread.h的选项
有关更多详细信息,请参见链接,其中包含全文。
在Linux中使用pthread.h编译C程序。
在Ubuntu中编译C / C ++程序所需的第一件事是安装GCC(Gnu编译器集合),它是build-essential
package的一部分,可通过运行以下命令来完成:
sudo apt-get install build-essential
然后,可以通过运行来测试是否已安装它gcc
。如果您看到类似的错误Fatal error: file not provided
(不确定确切的错误消息,但应该类似),则意味着您已准备好编译器。
为了编辑您的代码,您可以使用已经可用的Gedit,只需在Dash中搜索它即可。
现在,以下是编译C源文件的语法,请在文件所在的位置运行:
gcc MyProgram.c -o MyProgram
其中,switch -o
是可选的,但提供提及二进制文件的名称,该文件应从源代码中创建。
然后只需运行./MyProgram
即可运行您的二进制文件。
请注意,pthread.h
正如您提到的那样,默认情况下,GCC应当可以使用(POSIX Thread),因此只要在C文件中包含它就可以完成此工作,以防万一它不可用,简单的Google搜索就可以了。;)
更新资料
太久了,没看过吗?检查一下。:D
如果给出错误,则可以通过交换参数来尝试相同的命令,例如
gcc -lpthread -o output_file program_pthread.c
之后./output_file
提供程序输出,这program_pthread.c
是您已实现的pthread程序。