当前位置: 首页 > 面试题库 >

GCC的默认包含目录是什么?

太叔繁
2023-03-14
问题内容

当我使用gcc编译非常简单的源文件时,不必指定标准包含文件(例如stdio或stdlib)的路径。

GCC如何知道如何找到这些文件?

/usr/include内部是否具有硬连线的路径,还是会从其他OS组件获取路径?


问题答案:

为了弄清楚gcc/ 所使用的默认路径g++及其优先级,您需要检查以下命令的输出:

  1. 对于 C

    gcc -xc -E -v -
    
  2. 对于 C ++

    gcc -xc++ -E -v -
    

这归功于 Qt Creator团队



 类似资料:
  • 问题内容: 我正在尝试以编程方式找到Linux上的路径,据我所知,实际上这意味着找到GCC认为的路径。(这是真的吗?Clang是如何做到的?) 根据http://gcc.gnu.org/onlinedocs/cpp/Search- Path.html的 介绍,某些组件涉及CPU架构和GCC版本;后者尤其棘手;我想可以通过运行和解析输出(或)获得它,但这似乎充其量是不佳的,最坏的是它是脆弱的。假设某

  • 问题内容: 我希望gcc 除了通常的include目录之外,还包含来自的文件,但似乎没有类似物。 我知道我可以在编译时(或在makefile中)在命令行中添加include目录,但是我真的想在这里采用通用方法,例如在库中。 问题答案: 尝试设置(对于C头文件)或(对于C ++头文件)。 正如Ciro所述,它将为C和C ++(以及任何其他语言)设置路径。 在GCC文档中有更多详细信息。

  • 问题内容: 如果执行: 你可能会看到类似的输出 我的问题:是否存在显示hashCode号的任何特定原因? 问题答案: 对象哈希码是唯一的标准标识符,可能允许您在Java中区分不同的任意对象。它不一定是唯一的,但是相等的对象通常具有相同的哈希码。 默认toString()方法显示了对象类及其哈希码,因此您可以希望区分不同的对象实例。由于默认情况下也会在错误消息中使用它,因此这很有意义。 有关更多信息

  • 问题内容: 据我了解,当我执行the时,其内容将包含在我的docker映像内,但是如果我未在docker image中指定位置,它们将被放置在哪里? 问题答案: 这些文件不属于已 构建 (最终结果)映像。 它们是在构建过程 中 传递给守护程序的构建 上下文的 一部分,将由Dockerfile指令(例如或或)使用。 构建的上下文是位于指定PATH 或URL中的文件 例如,运行以下命令以在分支容器中使

  • 问题内容: 建立 Java不为JCE无限强度策略文件提供现成的支持 这样可以防止用户使用AES-256,这是广泛使用的加密标准中最大的密钥大小 不包括策略文件会导致许多问题: 意外的异常 不满意的解决方法 只需安装它们 使用不同的实现 使用可能违反Java许可协议的反射 JRE更新后损坏 安装后混乱 所有这些噪音导致程序损坏和/或错误 题 为什么不提供这些服务,将其视为败类? 问题答案: 事实证明

  • 我有一个带有Debian 9的新服务器。我使用