Mat*_*Asp 3 gcc cross-compiling yocto
问题:如何将标准库添加到 arm-fslc-linux-gnueabi-gcc
背景:我刚刚meta-toolchain在 Yocto 项目中进行了bitbake 编译。然后我安装了生成的 SDK 工具链
$ ./build/tmp/deploy/sdk/fslc-framebuffer-glibc-x86_64-meta-toolchain-armv7at2hf-neon-toolchain-2.4.2.sh
然后将 SDK 工具链安装在 /opt/fslc-framebuffer/2.4.2/
然后我可以轻松地运行可执行文件来获取正确的环境变量。
$ ./opt/fslc-framebuffer/2.4.2/environment-setup-armv7at2hf-neon-fslc-linux-gnueabi
我现在可以访问交叉编译器 arm-fslc-linux-gnueabi-gcc
到现在为止还挺好...
然后我在这里从 NXP 下载了准系统 SDK 。这是一部伟大的作品,但它可能有点过时了。首先解压缩文件,然后按照 SDK readme.pdf 中的步骤进行操作。
在 readme.pdf 之后,我执行以下操作: 要构建 SDK,请使用根文件夹中的 ./tools/build_sdk 命令。我收到多个错误,但它们都与标准库有关,例如:
iMX6_Platform_SDK/sdk/drivers/accelerometer/src/mma8451.c:31:10: fatal error: string.h: No such file or directory #include <string.h>
iMX6_Platform_SDK/sdk/include/sdk.h:40:10: fatal error: stdio.h: No such file or directory #include <stdio.h>
Run Code Online (Sandbox Code Playgroud)
那么我该如何解决呢?我是交叉编译标准库还是在其他地方获取二进制文件?
yocto 构建的 SDK 与普通的 arm 工具链略有不同。
我相信你用过
arm-fslc-linux-gnueabi-gcc hello.c
但实际上你需要Makefiles or Macros像下面这样使用,
${CC} hello.c -o hello
Run Code Online (Sandbox Code Playgroud)
将其直接写入终端或放入生成文件中。
| 归档时间: |
|
| 查看次数: |
2994 次 |
| 最近记录: |