我正在尝试以编程方式找到#include
Linux上的路径,据我所知,实际上这意味着找到GCC认为的路径。(这是真的吗?Clang是如何做到的?)
根据http://gcc.gnu.org/onlinedocs/cpp/Search-
Path.html的
介绍,某些组件涉及CPU架构和GCC版本;后者尤其棘手;我想可以通过运行gcc --version
和解析输出(或gcc -v
)获得它,但这似乎充其量是不佳的,最坏的是它是脆弱的。假设某个人的程序正在使用GCC进行编译,则可以从自己的代码中执行此操作,但这可能是另一种选择,但这取决于该假设。
推荐的做法是什么?
命令
echo | gcc -E -Wp,-v -
将显示正在使用的包含路径。
问题内容: 当我使用gcc编译非常简单的源文件时,不必指定标准包含文件(例如stdio或stdlib)的路径。 GCC如何知道如何找到这些文件? 它内部是否具有硬连线的路径,还是会从其他OS组件获取路径? 问题答案: 为了弄清楚/ 所使用的默认路径及其优先级,您需要检查以下命令的输出: 对于 C : 对于 C ++ : 这归功于 Qt Creator团队 。
为什么在那里插入? 如果没有一个好的理由:我能用什么方法摆脱它吗? 如果您想使用以下示例:https://godbolt.org/z/74ycy63se
对于 GCC 的认知,很多读者还仅停留在“GCC 是一个C语言编译器”的层面,是很片面的。从本节开始,我将带领大家系统学习 GCC,本节先带领大家系统地了解一下 GCC。 谈到 GCC,就不得不提 GNU 计划。GNU 全称 GNU's Not UNIX,又被称为“革奴计划”,由理查德·斯托曼于 1983 年发起。GNU 计划的最终目标是打造出一套完全自由(即自由使用、自由更改、自由发布)、开源的
问题内容: 我最近遇到了一个扩展名为.pid的文件,并在其中进行了探索,但没有发现太多。该文件说: Pid-File是一个包含进程标识号(pid)的文件,该文件存储在文件系统定义明确的位置,因此允许其他程序找出正在运行的脚本的pid。 任何人都可以对此进行更多说明,或指导我了解pid文件中包含的内容的详细信息吗? 问题答案: pid文件包含给定程序的进程ID(数字)。例如,Apache HTTPD
问题内容: 我希望gcc 除了通常的include目录之外,还包含来自的文件,但似乎没有类似物。 我知道我可以在编译时(或在makefile中)在命令行中添加include目录,但是我真的想在这里采用通用方法,例如在库中。 问题答案: 尝试设置(对于C头文件)或(对于C ++头文件)。 正如Ciro所述,它将为C和C ++(以及任何其他语言)设置路径。 在GCC文档中有更多详细信息。
发展至今(2020 年 6 月份),GCC 编译器已经更新至 10.1.0 版本,其功能也由最初仅能编译 C 语言,扩增至可以编译多种编程语言,其中就包括 C++ 。 除此之外,当下的 GCC 编译器还支持编译 Go、Objective-C,Objective-C ++,Fortran,Ada,D 和 BRIG(HSAIL)等程序,甚至于 GCC 6 以及之前的版本还支持编译 Java 程序。但本