Связывание 2 объектных файлов? - PullRequest
0 голосов
/ 28 февраля 2019

Я недавно начал с языка ассемблера ARM и собрал два исходных файла model.s и v_bin.s для model.o и v_bin.o соответственно;v_bin.s содержит подпрограмму, а model.s содержит код вызова.Я хочу связать два объектных файла с исполняемым файлом.Есть идеи?

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Вам необходимо использовать .globl my_func для экспорта символа my_func, чтобы другие файлы могли вызывать ваши my_func.

Затем вы можете связать обычным образом, передав несколько файлов .o тому, что вы обычно используетесвязать один в двоичный файл.(например, gcc или ld)

0 голосов
/ 28 февраля 2019

Просто, если вы хотите связать эти два файла, вы можете выполнить следующее, чтобы сделать это.Предполагается, что вы используете набор инструментов arm-none-eabi и не зависите от библиотеки.

arm-none-eabi-ld -T your-linker-script.ld -o "app.elf" v_bin.o model.o

Хороший ресурс: http://www.martinhubacek.cz/arm/arm-cortex-bare-metal-assembly/stm32f0-cortex-m0-bare-metal-assembly Посмотрите на файл make, который парень создал

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...