当前位置: 首页 > 知识库问答 >
问题:

无法使用arm-no-eabi-gcc使预编译头工作

曹茂材
2023-03-14

我正在使用下面的gcc工具链。gcc版本5.4.1 20160919(发布)[ARM/embedded-5-branch修订版240496](适用于ARM嵌入式处理器的GNU工具)

我可以创建。h.gch文件,但无法获取。h.gch在构建. c文件时使用。我使用-H和-Wulult-pch选项来检查原因,但编译器没有给出任何信息。就像。h.gch不存在,总是搜索。h文件。

共有1个答案

司业
2023-03-14

问题是预编译头必须是C源代码包含的第一个头文件,包括C源代码中列出的头文件和gcc命令行提供的头文件。

 类似资料:
  • 在阅读了这篇漂亮的文章(预编译头的维护和输入)之后,我对这些在现实生活中如何实际工作产生了一些疑问。更具体地说,在以下场景中,我如何知道需要触发预编译头的重建: 我决定在我的一本书中定义一些东西。cpp文件,改变预处理器解释已包含在预编译头中的某些头的方式 预编译头的使用是否应该强制执行某种限制性的编码风格,比如将. cpp文件中包含的头的数量限制为一个,并且永远不要在. cpp文件中定义ing内

  • 问题内容: arm-eabi,gnueabi和gnueabi-hf交叉编译器有什么区别?我发现很难选择编译器。是否有用于arm的本地编译器? 问题答案: 我不确定: eabi代表将在裸机手臂内核上运行的代码的编译。 gnueabi代表linux的代码编译 对于gnueabi / gnueabi-hf部分,我在这里找到了答案。 gcc-arm-linux-gnueabi是用于armel体系结构的跨工

  • 问题内容: 我是Cuda的新手,我正在尝试编译以下简单文件: 使用这个: 我得到的输出是: 我的gcc –version: 如何在不弄乱所有内容的情况下安装4.6和gcc的第二个版本? 答案是: CUDA不支持gcc 4.5和4.6-无法编译代码,并且其他工具链(包括cuda-gdb)将无法正常工作。您不能使用它们,并且该限制是不可协商的。 您唯一的解决方案是安装gcc 4.4版本作为第二个编译器

  • 我现在尝试创建一个运行STM32F0xx MCU的固件映像。它类似于flash算法,提供一些函数调用来控制STM32F0xx MCU引脚,但它比flash算法更复杂。所以它将使用STM32 HAL lib和Mbed lib。 编译器/链接器使用“-ffunction sections”和“-fdata sections”标志。 所以我使用“attribute((used))”尝试将函数保留在固件映

  • 我是微控制器领域的新手。我需要移植一个IDE,为AVR微控制器编译程序,为ARM微控制器编译程序。我刚刚将编译器从AVR替换为ARM,并根据某人的指示添加了一些选项。以下是命令: 当我执行它时,我得到以下错误: 我可以得到一些关于这个错误是什么以及如何解决它的帮助吗?我也不知道命令行中的那些选项指定了什么。

  • 似乎默认情况下,Clang采用了GNU汇编程序语法。 如何用Clang编译一个汇编文件使用ARM语法像this(指令)和this(指令)?