【发布时间】:2014-02-10 17:57:25
【问题描述】:
我正在使用 eclipse 编译一个多线程库。
如何在 eclipse 对 g++ 的调用中添加 -pthread 或 -pthreads 选项?
【问题讨论】:
-
查看这个并编辑 Makefile:stackoverflow.com/a/14072969/67566
-
您好,谢谢,但它不是 Makefile 项目。它是一个正常的日食。
我正在使用 eclipse 编译一个多线程库。
如何在 eclipse 对 g++ 的调用中添加 -pthread 或 -pthreads 选项?
【问题讨论】:
我差不多 2 年前写的原始答案现在已经过时了;这是今天的做法。
右键单击项目文件夹或文件>属性,然后C/C++构建>设置。在 GCC C++ Linker > Linker flags 添加 -pthread,最后点击 Apply 按钮。就是这样。
我在 Ubuntu 14.04 上使用 gcc 4.8 和 Eclipse Luna 对此进行了测试。感谢 Neil Traft 在comment 中指出这一点。
2014 年 2 月的原始答案,现已过时:
右键单击项目文件夹或文件>属性,然后C/C++构建>设置。
在 GCC C++ Compiler > Miscellaneous 将 -pthread 添加到 Other flags 并点击 Apply 按钮。
在 GCC C++ Linker > Libraries 点击 Libraries 栏上带有绿色加号的图标以添加 pthread,最后点击 Apply 按钮。
这个必须解决。
请注意,您必须告诉编译器和链接器您正在编译多线程应用程序(将-pthread 传递给编译器,将-lpthread 传递给链接器)。
【讨论】:
-pthread,而不是-lpthread。我不知道这是否是“正确”的方法,但我通过转到 GCC C++ Linker > Miscellaneous 并输入 -pthread 让它工作在 链接器标志 框中。
greed 更改为green。改动太小了,我不能编辑。