【发布时间】:2017-11-22 15:50:47
【问题描述】:
我正在使用 Mediatek X20 开发板和gcc-linaro-6.3.1-2017.05 版本
用于基准 aarch64 与 aarch32。
所以我想将二进制文件构建为两种类型的 aarch32 abi :lp64,ilp32。
来自 gcc 手册,(@[toolchain_path]/share/doc/gcc/AArch64-Options.html)
它说我可以选择ilp32 和lp64 和-mabi 选项。
但是当我使用-mabi=lp64 或-mabi=ilp32 时,gcc 会出现如下错误。
armv8l-linux-gnueabihf-gcc: error: unrecognized argument in option \u2018-mabi=lp64\u2019
armv8l-linux-gnueabihf-gcc: note: valid arguments to \u2018-mabi=\u2019 are: aapcs aapcs-linux apcs-gnu atpcs iwmmxt
如何制作ilp32 和lp64 格式的二进制文件?
我如何检查二进制文件的格式?
感谢您的回复:)
【问题讨论】:
-
1) CROSS_COMPILE 和 ARCH 的路径是否正确?? 2)你对内核源码路径有足够的权限吗??
-
我的答案 :) 1, 2) 我只是构建 test.c。所以我用下面的命令构建。 "armv8l-linux-gnueabihf-gcc test.c -o -march=armv8-a+crc -mabi=lp64"