编译aarch64

时间:2016-01-27 20:57:09

标签: gcc assembly arm arm64

我已经使用aarch64指令集生成了一个汇编文件try.s。我想在运行ubuntu的ARM8(aarch64处理器)上编译它。 我的本机编译器是gcc(4.8),我使用以下命令编译

gcc -o try.o try.s

我收到以下错误 错误:预期ARM寄存器 - mov x10,x0

虽然我认为gcc 4.8支持aarch64,但似乎无法识别aarch4寄存器。有人能告诉我我缺少什么,或者我应该包含哪些特殊选项。或者建议我使用本机编译器(不是交叉编译器)进行aarch64。我也想使用gdb本地调试。

1 个答案:

答案 0 :(得分:0)

gcc适用于32b目标。没有为 aarch32 指令集定义'Xn'寄存器。那就是编译器告诉你的。


正确的工具链为aarch64-elf-gcc

PS:将asm文件扩展为.S(大写字母)是一个好主意

相关问题