У меня есть шесть исходных файлов, и я хотел бы связать их в формате .elf
. Я написал make-файл, который преобразует все файлы исходного кода в файлы .obj.
Когда я пытаюсь связать эти объектные файлы, используя синтаксис, который я дал в make-файле, появляются следующие ошибки:
gcc -c rt_look.c
Linking ARM test_rom.elf
make[1]: o: Command not found
make[1]: [test_rom.elf] Error 127 (ignored)
make[1]: Leaving directory `/c/Imperas/Demo/main/isolated_model_ert_rtw
Я также вставляю правила makefile:
all:$(OBJ) test_rom.elf
ert_main.o: ert_main.c isolated_model.h rtwtypes.h
gcc -c ert_main.c
isolated_model.o: isolated_model.c isolated_model.h isolated_model_private.h
gcc -c isolated_model.c
isolated_model_date.o: isolated_model_data.c isolated_model.h isolated_model_data.h
gcc -c isolated_model_data.c
rt_look2d_normal.o: rt_look2d_normal.c rtlibsrc.h
gcc -c rt_look2d_normal.c
rt_nonfinite.o: rt_nonfinite.c rt_nonfinite.h
gcc -c rt_nonfinite.c
rt_look.o: rt_look.c rtlibsrc.h
gcc -c rt_look.c
syscalls.o: syscalls.c
gcc -c syscalls.c
test_rom.elf: $(OBJ)
$(V) echo "Linking $(CROSS) $@"
$(V) $(IMPERAS_LINK) -o $@ $^ $(IMPERAS_LDFLAGS) -lm
clean::
-rm -f test_rom.elf
-rm -f *.$(OBJ).o
endif