Yocto元工具链致命错误:stdio.h:没有这样的文件或目录

时间:2018-04-11 14:16:10

标签: gcc cross-compiling yocto

问题:如何将标准库添加到arm-fslc-linux-gnueabi-gcc

背景: 我刚刚在Yocto项目中编译了meta-toolchain。 然后我安装了生成的SDK-toolchain

  

$   ./build/tmp/deploy/sdk/fslc-framebuffer-glibc-x86_64-meta-toolchain-armv7at2hf-neon-toolchain-2.4.2.sh

然后在/opt/fslc-framebuffer/2.4.2 /

中安装了SDK工具链

然后我可以轻松运行可执行文件来获取正确的环境变量。

  

$   ./opt/fslc-framebuffer/2.4.2/environment-setup-armv7at2hf-neon-fslc-linux-gnueabi

我现在可以访问交叉编译器arm-fslc-linux-gnueabi-gcc

到目前为止一直很好......

然后我从NXP here下载了准系统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>

那我该如何解决??我是否可以交叉编译标准库,还是将二进制文件放到其他地方?

1 个答案:

答案 0 :(得分:3)

yocto构建的SDK与普通的arm工具链略有不同 我相信你用过  /usr/local/bin
但实际上你需要使用arm-fslc-linux-gnueabi-gcc hello.c,如下所示,

Makefiles or Macros

将此文件直接写入终端或将其放入makefile中。