cz6618 发表于 2024-1-4 09:47:41

汇编文件编译出现--abi错误

使用内核Cortex-A53,64位,编译工程中的汇编文件.s,报错        Error in command line: Invalid argument to option '--abi',请问有大拿遇到这个问题吗?
IAR版本9.50.1

万分感谢。

eric2013 发表于 2024-1-4 13:47:02

帮顶,不清楚这个问题。

zcsexp 发表于 2024-1-4 13:53:08

这种问题你得贴出你的构建出错的文件对应的完整命令行才能给分析问题啊,否则没人知道你咋设置的汇编器参数~

cz6618 发表于 2024-1-4 17:21:57

zcsexp 发表于 2024-1-4 13:53
这种问题你得贴出你的构建出错的文件对应的完整命令行才能给分析问题啊,否则没人知道你咋设置的汇编器参数 ...

本来想贴截图,老是被拦截:(
没有设置汇编特殊指令,在osp文件里显示如下:
D:\IARWorkspace\armv8\src\vector.s -OD:\IARWorkspace\armv8\Debug\Obj\ -s+ -M<> -w+ -r -j --cpu Cortex-A53 --abi ilp32
就是这个--abi ilp32报错

2859932063 发表于 2024-1-4 17:49:03

这个报错可能是由于使用了错误的ABI,导致工具无法编译生成目标文件。在Cortex-A53处理器上,ILP32是不受支持的 ABI(Application Binary Interface,应用程序二进制接口,决定了二进制代码与操作系统及其他库之间的接口规范)。

针对Cortex-A53处理器,请使用AARCH64架构下的ABI,例如:--abi lp64。

你可以尝试更改命令行中的abi参数为"lp64",即:

    D:\IARWorkspace\armv8\src\vector.s -OD:\IARWorkspace\armv8\Debug\Obj\ -s+ -M<> -w+ -r -j --cpu Cortex-A53 --abi lp64

如果还有其他出错问题,可以提供具体的错误信息给我,我将会尽力提供更多的帮助。

cz6618 发表于 2024-1-4 18:18:18

2859932063 发表于 2024-1-4 17:49
这个报错可能是由于使用了错误的ABI,导致工具无法编译生成目标文件。在Cortex-A53处理器上,ILP32是不受支 ...

非常感谢你的回答。lp64也报相同的错误
D:\IARWorkspace\armv8\src\vector.s -OD:\IARWorkspace\armv8\Debug\Obj\ -s+ -M<> -w+ -r -j --cpu Cortex-A53 --abi lp64

cz6618 发表于 2024-1-5 17:41:11

我勾选了allow alternative register names,mnemonics and..
如果不勾选则不出现--abi问题,但是报如下错误:
        Error: Operand syntax error        D:\IARWorkspace\asm\asm.s        19
        Error: Operand syntax error        D:\IARWorkspace\asm\asm.s        20
        Error: Bad instruction        D:\IARWorkspace\asm\asm.s        32
        Error: Undefined symbol:'PC'        D:\IARWorkspace\asm\asm.s        13
IAR 只支持32位asm,M系列没有问题,改为A53 64位就会出现上述错误

cz6618 发表于 2024-1-18 14:01:18

自己帮顶。。。

庄永 发表于 2024-1-18 19:12:50

cz6618 发表于 2024-1-18 14:01
自己帮顶。。。

这样试试:--abi=arm64-v8a

cz6618 发表于 2024-1-19 14:47:19

庄永 发表于 2024-1-18 19:12
这样试试:--abi=arm64-v8a

这个参数不是我手动设置的,是IAR工具自动生成的,只有lp64和ilp32

cz6618 发表于 2024-3-6 16:19:25

再顶最后一次:'(

skyshine 发表于 2024-3-6 17:07:21

有没有源码提供,没搜到A53裸机代码

skyshine 发表于 2024-3-6 17:24:12

cz6618 发表于 2024-1-19 14:47
这个参数不是我手动设置的,是IAR工具自动生成的,只有lp64和ilp32

general options->target->execute mode改成32bit试试

skyshine 发表于 2024-3-7 08:40:22

你是不是拿gcc的汇编文件用IAR编译的,老老实实用GCC或者自己写IAR启动文件,或者直接写C文件,关键地方就内嵌汇编
页: [1]
查看完整版本: 汇编文件编译出现--abi错误