0

我正面临一个微不足道的问题。

我在 arm 程序集中做一个 ldr r0, _buff,其中 _buff 是在 ac 文件中定义的。_buff 不是静态的。

我应该如何在程序集文件中定义外部链接(类似于 C 中的 extern)是必需的还是我遗漏了什么。

4

2 回答 2

0

没有必要这样做。如果 *_buff* 在 C 文件中已定义为全局,则可以一起编译和构建文件:

arm-none-gnuaebi-gcc -o output assembly.s cfile.c

您也可以单独编译它们,它也可以工作。但是 _buff 不存在,你会得到一个链接错误。

于 2013-09-27T14:10:49.390 回答
0

你不需要。如果在源文件中找不到符号,则假定它在其他地方定义。

于 2013-09-27T10:43:08.887 回答