2

我已经使用 yocto 为 IMX6 Sabersd 构建了图像,如下所示。

#curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
#repo init -u git://git.freescale.com/imx/fsl-arm-yocto-bsp.git -b imx-3.10.53-1.1.0_ga
#repo sync
#source setup-environment build
#bitbake core-image-minimal

在构建期间,它正在为 IMX6 获取 gcc-4.8 源代码和编译工具 chian。工具链使用硬浮点(使用“./arm-poky-linux-gnueabi-gcc -v”检查,输出有“--float-with=hard”),我的要求是工具链必须使用softfp。

这背后的原因是我使用的是与 hardfp 不兼容的 3rd 方预建库。因此,在编译期间,我收到如下所示的错误。

ld: error: *Executable* uses VFP register arguments,  *Library* does not
ld: failed to merge target specific data of file *Library*

你能帮助我如何更改 yocto 中的配置以使用 softfp 编译工具链。

我找不到 yocto freescale 使用的是哪个版本,但我可以在“poky/meta/recipes-devtools/gcc/”下看到 gcc-4.8 食谱。

4

1 回答 1

2

鉴于我不知道您使用的是什么核心处理器。

您要修改的文件应该在 poky/meta/conf/machine/include/

你也可以添加这样的东西conf/local.conf来覆盖:

TARGET_CC_ARCH = "-march=armv7 -mfpu=vfp -mfloat-abi=softfp"

于 2016-05-26T18:59:04.397 回答