@xperious

Как собрать программу чтобы объектные файлы были не в директории с исходниками?

Здравствуйте, в директории /hello есть файл hello.c, создал в этой директории другую /hello/arch... в нее положил makefile следующего содержания:
all: hpp

hpp : ../hello1.o
	gcc ../hello1.o -o hpp

../hello1.o : ../hello.c
	gcc -c ../hello.c

подскажите, как сделать правильно, чтобы объектный файл создавался именно в /hello/arch, а не в одной директории с hello.c?
  • Вопрос задан
  • 392 просмотра
Пригласить эксперта
Ответы на вопрос 2
Заменить "../hello1.o" на "hello1.o"

gcc -c ../hello.c создаст объектный файл hello.o. Но вы используете дальше другое имя. Так что замените на gcc -c ../hello.c -o hello1.o

UPD: То, что с лева от двоеточия - это всего лишь метка. К именам файлов она никак не относится. С тем же успехом можно написать так:
all: hpp

hpp: compile
        gcc hello.o -o hpp

compile: ../hello.c
        gcc -c ../hello.c
Ответ написан
Комментировать
@xperious Автор вопроса
пишет "hello1.o нет такого файла"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы