реклама на сайте
подробности

 
 
> Проблемы с линковкой из библиотеки *.a, sam7x и gcc
xelax
сообщение Nov 20 2007, 16:22
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 370
Регистрация: 7-11-06
Пользователь №: 22 035



есть две части проекта... Аппаратно зависимая hwd и аппаратно независимая hwi часть. hwi вызывает функции из hwd части.
Собираю hwd.a(в arm моде) и hwi.a(в thumb моде)...
Затем пишу простенькую main где использую вызываю функции из hwi.

В итоге при линковке проекта ругается на вызов hwd-функций в hwi-функциях.
"undefined reference".

Когда собираю проект из объектников напрямую без библиотек, то всё ок. Проект собирается, работает.

так собирается.
Код
test.elf : $(ARM_OBJ) $(THUMB_OBJ)     
    $(CC) $(CFLAGS) $(ARM_OBJ) $(THUMB_OBJ) -nostartfiles $(LINKER_FLAGS)

$(THUMB_OBJ)  : %.o : %.c $(LDSCRIPT)
    $(CC) -c $(THUMB_FLAGS) $(CFLAGS) $< -o $@    

$(ARM_OBJ) : %.o : %.c $(LDSCRIPT)
    $(CC) -c $(CFLAGS) $< -o $@


А так не линкуется....
makefile1
Код
################
$(objects_hwd):    
    $(CC) $(CFLAGS) -c $^ -o $@
$(BUILDDIR)/hwd1.o: $(BUILDDIR)/hwd1.c
$(BUILDDIR)/hwd2.o: $(BUILDDIR)/hwd2.c
.
.
.
################
$(objects_hwi):
    $(CC) $(CFLAGS) $(THUMB_FLAGS) -c $^ -o $@
$(BUILDDIR)/hwi1.o: $(BUILDDIR)/hwi1.c
$(BUILDDIR)/hwi2.o: $(BUILDDIR)/hwi2.c
.
.
.
################
LIB_HWD : $(objects_hwd)
    $(AR) cr $(LIBDIR)/hwd.a $(objects_hwd)
################
LIB_HWI : $(objects_hwi)
    $(AR) cr $(LIBDIR)/hwi.a $(objects_hwi)


makefile2
Код
LIBS = -lhwd -lhwi

all: $(objects_main) $(PROJECT)

$(objects_main):     
    $(CC) $(CFLAGS) $(INCL) -c $^ -o $@
main.o:  main.c

$(PROJECT): $(objects_main)    
    $(CC) -nostartfiles $(CFLAGS) $(objects_main) $(LIB_PATHS) $(LIBS) -nostartfiles $(LINKER_FLAGS)


Может кто знает почему. Какие-нибудь флаги забыл? Что-то совсем не понятно почему... wacko.gif
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 14:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01312 секунд с 7
ELECTRONIX ©2004-2016