3

我正在使用以下选项:

-O3
-march=armv7-a
-mtune=cortex-a8
-ftree-vectorize
-mfloat-abi=softfp
-fsigned-char
-Wall
-save-temps

用于使用 ArmLinuxToolChain 为 arm-v7(32 位)进行交叉编译。

什么是等效的编译器选项gcc-linaro-aarch64-linux-gnu-4.8-2014.04_linux to build for armv8?我尝试使用与 -march=armv8-a -mtune=cortex-a53 相同的选项并得到:

aarch64-linux-gnu-g++:错误:无法识别的命令行选项“-mfloat-abi=softfp”

4

1 回答 1

4

以 -m 开头的 GCC 选项是与机器相关的选项,因此 -m* 选项的可用性因目标而异。这是一个这样的案例。没有为 Aarch64 定义软浮点 ABI,因此 GCC 不提供特定于 ARM 的-mfloat-abi选项。

如果您只是删除-mfloat-abi=softfp,那么您的问题应该得到解决。

我建议你调查一下你是否需要-save-temps,它通常只用于调试或报告编译器问题。

于 2015-04-10T09:22:36.847 回答