Універсальний gcc-avr.mak
У зв’язку з описаною раніше помилкою avr-ld та методом боротьби з нею мене спитали про той «універсальний» файл gcc-avr.mak
, яким я користуюся у всіх проектах. «Нічого воєнного», це просто файл, у який зібрано команди, які без змін переходили б з проекту в проект шляхом копіювання (і наступного редагування) Makefile
від попереднього проекту 😉
Тепер файл gcc-avr.mak
підключається до Makefile
проекту командою include
. Так само, як і подібний мейк-файл для роботи з програматором avreal — avreal.mak
. Файл для проекту тепер короткий, містить лише головні налаштування. Легше знайти потрібне, важче поламати те, що вже перевірене.
Повернімося тепер до цього універсального мейк-файлу для avr-gcc і до згаданої помилки в avr-ld.
Окрім іншого, на початку gcc-avr.mak
здійснюється налаштування шляхів до програм, використовуваних при компіляції. Виглядає це так (нумерація рядків відповідає файлу, доданому у прикріплений архів).
40 41 42 43 44 45 46 47 48 49 | # Set default toolchain prefix if it does not defind in environment or project makefile TOOL ?= avr- # Set tool names CC := $(TOOL)gcc AS := $(TOOL)gcc -x assembler-with-cpp BIN := $(TOOL)objcopy OBJCOPY := $(TOOL)objcopy OBJDUMP := $(TOOL)objdump SIZE := $(TOOL)size |
Attached Files:
- makefile-demo.zip
Demo-project for "universal" makefiles: gcc-avr.mak and avreal.mak