2013-09-27 5 views
0

Я столкнулся с тривиальной пробкой.Использование внешнего символа в сборе в сборе

Я делаю ldr r0, _buff в сборе рук, где _buff определен в файле c. _buff не является статичным.

Как определить внешнюю привязку в файле сборки (аналогично extern in C) требуется или есть что-либо, что мне не хватает.

ответ

0

Вам не нужно. Если символ не может быть найден в исходном файле, предполагается, что он будет определен в другом месте.

0

Это не обязательно. Если * _buff * была определена как глобальная в файле C, вы можете скомпилировать и построить файлы вместе:

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

Вы также можете скомпилировать их по отдельности, это также будет работать. Но _buff не существует, вы получите сообщение об ошибке.

Смежные вопросы