Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Makefile в WinAVR
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
RomanRom
Задача следующая. Имеется проект WinAVR, в котором основные файлы Си и h находятся в одной папке, а подключаемые библиотечные - в папке с точно заданным адресом, например, C:\AVRLIB\Atmega\
Как правильно указать подключение библиотечных файлов в Makefile
SRC = my.c $(TARGET).c C:/AVRLIB/Atmega/lib
Правда при этом компилятор выдает ошибки
gormih
Цитата(RomanRom @ Feb 23 2007, 14:10) *
Задача следующая. Имеется проект WinAVR, в котором основные файлы Си и h находятся в одной папке, а подключаемые библиотечные - в папке с точно заданным адресом, например, C:\AVRLIB\Atmega\
Как правильно указать подключение библиотечных файлов в Makefile
SRC = my.c $(TARGET).c C:/AVRLIB/Atmega/lib
Правда при этом компилятор выдает ошибки




Разве библиотеки подключаются в makefile??

Я конечно не знаток конкретно winavr, но вообще файлы в проект по стандартам языка СИ подключаются директивой include

blink.gif
RomanRom
Уточню. Библиотечные файлы - это имеются в виду Си-файлы и h-файлы из своей собственной библиотеки (не встроенной в WinAVR)
big256
У меня например так:



OBJ = main.o file1.o file2.o file3.o

all: $(PRG).elf lst text eep

$(PRG).elf: $(OBJ)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)


где как ты понимаеш file1.o file2.o file3.o это и есть свои либы.

кстате в ..\winavr\sample\ есть makefile довольно познавательный wink.gif
big256
Толькошто проверял такую схему:

есть каталог /main/

в нем например /i2c/
и там соотв файлы i2c.c i2c.h

чтобы заинклюдить i2c.* в файлы из каталога /main/
пишем в них #include "i2c/i2c.h"

также в мейкфайле прописуем

OBJ = main.o ./i2c/i2c.o

и все собирается!

если же вам надо заинклудить в i2c файлики из /main/ то пишем
#include "../file_iz_papki_main.h"
RomanRom
Спасибо за ответы. По OBJ все понятно. Только мой вопрос был о том, как сделать связку файлов именно через SRC. Получается, что пока никак?
beer_warrior
Цитата
Только мой вопрос был о том, как сделать связку файлов именно через SRC.

А в чем проблема?
SRC+=myfile.c
хидеры повключать через #include
или
EXTRAINCDIRS = c:/mylib
CINCS = myfile.h
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.