c++ - gcc 不会编译缺少的 sys/cdefs.h

标签 c++ c gcc libgcc

尝试在 armhf 嵌入式设备上编译 gcc,但在尝试使用 xgcc 编译 libgcc 时停止,说找不到 sys/cdefs.h

libc6 和 libc6-dev 已经安装,cdefs.h 可以在/usr/arm-linux-gnueabihf/sys/找到

如何将/usr/arm-linux-gnueabihf 添加到 xgcc 包含路径?

最佳答案

需要将 --with-float=hard 添加到配置行。

这是因为 MULTIARCH_DIRNAME 是基于 with-float 配置选项定义的

MULTIARCH_DIRNAME = $(call if_multiarch,arm$(ARM_EB)-linux-gnueabi$(if $(filter hard,$(with_float)),hf))

正如 gcc的好心人指出的那样

关于c++ - gcc 不会编译缺少的 sys/cdefs.h,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39271028/

相关文章:

c - C 代码库中的全局变量识别

assembly - 安装 qemu 后是否有命令运行任何 ARM 汇编文件 (.s)

c++ - 从另一个函数控制 RenderWindow

c++ - 如何使自定义 MSBuild 目标的执行依赖于文件的时间戳?

c++ - 如何声明包含队列成员的动态结构数组?

c - 有什么方法可以使用给定的 inode 编号搜索文件或文件名?

c - 一个变量声明中的多个 const

gcc - exit.c :(. text+0x18):使用arm-none-eabi-gcc时对 `_exit'的 undefined reference

c++ - 为什么 gcc 没有从多目标函数中捕获异常?

c++ - 我可以有不同类型的二维数组吗?