Программирование AVR Как передавать линкеру опции через командную строку компилятора avr-gcc Thu, March 28 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Как передавать линкеру опции через командную строку компилятора avr-gcc Печать
Добавил(а) microsin   

Это можно сделать с помощью опции -Wl.

Например, нам нужно передать линкеру команду сгенерировать карту памяти (linker memory map) в файле foo.map (опция для линкера -Map=foo.map), и сгенерировать таблицу перекрестных ссылок (cross reference table, опция для линкера --cref). Это делается таким образом:

avr-gcc -O -o foo.out -Wl,-Map=foo.map -Wl,--cref foo.c

В этом примере опция -Wl используется дважды, и опция для линкера указывается после опции -Wl через запятую.

В случае использования в Makefile переменной флагов для линкера, опцию -Wl удобно передавать через неё. В примере используются переменные COMMON и LDFLAGS:

## Linker flags
LDFLAGS = $(COMMON)
LDFLAGS += -Wl,-Map=foo.map -Wl,--cref

[Ссылки]

1. avr-gcc: опции компилятора C для микроконтроллеров AVR.
2. avr-libc Frequently Asked Questions site:avr-libc.nongnu.org.

 

Добавить комментарий


Защитный код
Обновить

Top of Page