Buildroot:编译rpi-userland时VFP寄存器参数错误

时间:2013-07-27 15:40:05

标签: floating-point cross-compiling raspberry-pi buildroot

首先,我不知道这是否属于这里,但我需要你的同事们帮助同事! 我正在尝试使用提供的Raspberry Pi配置使用buildroot构建我自己的linux剥离系统。虽然,我正面临一个问题,当'make all'程序到达阶段时,它应该构建rpi-userland,会发生一个奇怪的错误。

我有奇怪的编译错误告诉我LD在链接时遇到错误,因为:先前编译的目标文件使用VFP寄存器参数。 据我所知,这个错误的发生是因为有一个softfp和hardfp冲突,但是,在查看构建参数后,我无法确定问题的根源。

我的主机配置是i686 Ubuntu PC,我的目标,如上面所揭示的是着名的Raspberry Pi,所以显然我正在进行交叉编译。 这是发生的事情:

Building C object
CMakeFiles/cmTryCompileExec306248226.dir/testCCompiler.c.o

/home/robbyos/buildroot-2013.05/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabi-gcc
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -pipe
-mfloat-abi=hard -mfpu=vfp -Os -o
CMakeFiles/cmTryCompileExec306248226.dir/testCCompiler.c.o -c
/home/robbyos/buildroot-2013.05/output/build/rpi-userland-5e9a740a88a889dfc8a18bb1b00c17e5dd9d0108/CMakeFiles/CMakeTmp/testCCompiler.c

Linking C executable cmTryCompileExec306248226

/home/robbyos/buildroot-2013.05/output/host/usr/bin/cmake -E
cmake_link_script CMakeFiles/cmTryCompileExec306248226.dir/link.txt
--verbose=1

/home/robbyos/buildroot-2013.05/output/host/usr/bin/arm-buildroot-linux-uclibcgnueabi-gcc
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -pipe
-mfloat-abi=hard -mfpu=vfp -Os
CMakeFiles/cmTryCompileExec306248226.dir/testCCompiler.c.o -o
cmTryCompileExec306248226 -rdynamic


/home/robbyos/buildroot-2013.05/output/host/usr/lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.7.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld:
error: CMakeFiles/cmTryCompileExec306248226.dir/testCCompiler.c.o uses VFP
register arguments, cmTryCompileExec306248226 does not

正如您所看到的,编译器和链接器都使用“-mfloat-abi = hard -mfpi = vfp”标志,因此我不明白为什么会出现这些错误。 我希望有人可以帮助我!

提前致谢!

1 个答案:

答案 0 :(得分:0)

请将此问题报告给Buildroot邮件列表,包括重现它所需的所有详细信息:Buildroot版本,Buildroot配置等。