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

 
 
> makefile, в чем ошибка?
Сергей Борщ
сообщение Dec 22 2007, 20:48
Сообщение #1


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Пишу makefile. Надо компилить два набора исходников (ARM и THUMB). Уже выкинул все, сейчас файл выглядит так:
Код
TARGET = arm-elf-
CC   = $(TARGET)gcc
AS   = $(TARGET)gcc -x assembler-with-cpp

SRC_ARM = ./Src/crt.s

OBJ_ARM  = $(SRC_ARM:.s=.o)

# makefile rules

all: $(OBJ_ARM)

$(OBJ_ARM) : %.o : %.c
    $(CC) -c $< -o $@

$(OBJ_ARM) : %.o : %.cpp
    $(CC) -c $< -o $@

$(OBJ_ARM) : %.o : %.s
    $(AS) -c $< -o $@
При запуске make получаю кучу варнингов:
Цитата
makefile:17: warning: overriding commands for target `Src/crt.o'
makefile:14: warning: ignoring old commands for target `Src/crt.o'
makefile:20: warning: overriding commands for target `Src/crt.o'
makefile:17: warning: ignoring old commands for target `Src/crt.o'
make.exe: *** No rule to make target `Src/crt.c', needed by `Src/crt.o'. Stop.
Смотрю в качестве примера makefile от FreeRTOS, там все работает. Голову сломал - где у меня ошибка? Если убрать $(OBJ_ARM) :, то все работает, но мне надо именно с ней, ибо потом будут еще и $(OBJ_THUMB) :


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post



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

 


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


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