我一直有这个问题的最后几天,我无法让我的头在这里真正发生的事情,或者是什么问题。ARM编译错误,VFP注册使用的可执行文件,而不是目标文件
我有这些标志生成文件:
CC = arm-linux-gnueabihf-gcc-4.6
FLAGS = -O3 -march=armv7-a -mtune=cortex-a9 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp -std=gnu99
我有一个某文件,里面有一些目标文件库,所有我需要做的就是在我的可执行链接它们。我所知道的原型,这一切,是抱怨的唯一的事情是:
/usr/bin/ld: error: *EXECUTABLE* uses VFP register arguments, *OBJECTFILE* does not
/usr/bin/ld: failed to merge target specific data of file *OBJECTFILE*
当我不使用-mfloat-ABI = softfp,我得到另一个错误与浮点寄存器。
有没有人有任何想法是什么导致这一点,我可以做些什么来解决这个问题,比如让我的可执行文件不使用虚拟浮点寄存器参数?
[email protected]:~/Desktop/perf_test$ make
arm-linux-gnueabihf-gcc-4.6 -c -O3 -march=armv7-a -mtune=cortex-a9 -mfpu=neon -ftree-vectorize -std=gnu99 -mfloat-abi=softfp perf_test.c ../baselin