找出 GCC 包含路径是什么[重复]
- 2024-10-22 08:28:00
- admin 原创
- 83
问题描述:
我正在尝试以编程方式#include
在 Linux 上查找路径,据我所知,这实际上意味着找到 GCC 认为的路径。 (这是真的吗?Clang 是如何做到的?)
根据http://gcc.gnu.org/onlinedocs/cpp/Search-Path.html,一些组件涉及 CPU 架构和 GCC 版本;后者尤其棘手;我猜想可以通过运行gcc --version
和解析输出(或gcc -v
)来获得,但这在最好的情况下似乎不够优雅,在最坏的情况下则很脆弱。假设某人的程序正在使用 GCC 进行编译,那么从代码内部执行此操作可能是另一种选择,但这需要取决于该假设。
推荐的方法是什么?
解决方案 1:
命令
echo | gcc -E -Wp,-v -
将显示正在使用的包含路径。
解决方案 2:
我不确定您所说的查找包含路径的推荐方法是什么意思。标准方法如下所示(适用于 c 和 c++):
$ `gcc -print-prog-name=cc1` -v
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
/usr/include
End of search list.
^C
$ `gcc -print-prog-name=cc1plus` -v
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/4.7
/usr/include/c++/4.7/x86_64-linux-gnu
/usr/include/c++/4.7/backward
/usr/lib/gcc/x86_64-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.7/include-fixed
/usr/include
End of search list.
^C
相关推荐
热门文章
项目管理软件有哪些?
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理必备:盘点2024年13款好用的项目管理软件
热门标签
云禅道AD