【问题标题】:Purpose of include folders in cross compiler交叉编译器中包含文件夹的目的
【发布时间】:2020-12-14 10:32:49
【问题描述】:

我已将 Raspberry Pi 的 GCC 交叉编译器安装到我的 Ubuntu 20.04 to opt 文件夹中。现在,当我创建新的交叉编译项目时,我的 Eclipse 项目资源管理器中有包含列表:

/opt/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/include
/opt/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/include
/opt/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf/lib/gcc/arm-none-linux-gnueabihf/10.2.1/usr/include
/opt/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf/lib/gcc/arm-none-linux-gnueabihf/10.2.1/usr/include-fixed

Eclipse 如何知道这些包含文件夹?

所有这些文件夹的用途是什么?它们被定义为什么样的包含?

假设我需要使用 SDL2 库。我应该把它的头文件和二进制文件放在哪里?

【问题讨论】:

  • 注意:在 Unix/BSD 和 Linux 上,这些也是“目录”,而不是 Windows 用户的“文件夹”概念,它们不是一回事。

标签: gcc raspberry-pi cross-compiling sdl-2


【解决方案1】:

正如本文所述(有点过时)https://www.eclipse.org/community/eclipse_newsletter/2013/october/article4.phpCDT 将尝试检测内置编译器符号并包含使用特殊选项运行编译器的路径,并解析此特殊运行的输出。该命令可能类似于:arm-linux-gnueabihf-cpp -v /dev/null -o /dev/null 假设您使用的编译器是 arm-linux-gnueabihf-gcc。

所有这些文件夹都包含包含文件,例如 stdio.h 、 stdlib.h ... of libc 、 libm ... 以及一些特定于 arm 的头文件。

如果您不是 100% 确定,请将交叉编译后的文件安装在一个目录中,并将包含目录添加到您的 eclipse 项目中。

【讨论】:

    猜你喜欢
    • 2021-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-15
    • 1970-01-01
    • 2017-12-21
    • 1970-01-01
    相关资源
    最近更新 更多