首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >编译时-pthread标志的意义

编译时-pthread标志的意义
EN

Stack Overflow用户
提问于 2010-01-25 00:33:14
回答 2查看 96.4K关注 0票数 160

在各种多线程C和C++项目中,我看到-pthread标志同时应用于编译和链接阶段,而其他项目则根本不使用它,只是将-lpthread传递给链接阶段。

没有编译和链接-pthread标志会有什么危险吗?也就是说,-pthread实际上是做什么的?我主要对Linux平台感兴趣。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-25 00:37:56

尝试:

代码语言:javascript
运行
复制
gcc -dumpspecs | grep pthread

并查找任何以%{pthread:开头的内容。

在我的电脑上,这会导致文件用-D_REENTRANT编译,并用-lpthread链接。在其他平台上,这可能会有所不同。使用-pthread实现最大的可移植性。

在GNU libc上使用_REENTRANT改变了一些libc头文件的工作方式。作为一个具体的例子,它使errno调用返回线程本地位置的函数。

票数 118
EN

Stack Overflow用户

发布于 2010-01-25 00:38:04

来自man gcc

-pthread通过pthreads库添加了对多线程的支持。此选项设置预处理器和链接器的标志。

票数 44
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2127797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档