Eclipse C++ Makefile проекта вывода

У меня есть C++ Makefileproject для eclipse, если я его создаю, бинарный файл находится в корне проекта. Как я могу изменить каталог сборки на {ROOT}/bin?

Я попробовал свойства проекта -> c/ C++ Build -> Build location (Build directory: MY PATH), но он не может скомпилироваться вообще.

1 ответ

Решение

Вы используете Makefile-Project. Все, что нужно сделать, в том числе куда поместить исполняемый файл, должно быть написано вами в Makefile! Eclipse просто запускает сборку, вызывая make.

Простой пример:

CXXFLAGS= -g -O0
CXX=g++


all: bin bin/test

bin/test: bin/test.o
    $(CXX) -o bin/test bin/test.o

bin/test.o: test.cpp
    $(CXX) $(CXXFLAGS) -o bin/test.o -c test.cpp

bin:
    mkdir bin

clean:
    rm bin/test.o
    rm bin/test

Из этого источника я узнал, как написать Makefile: http://www.eng.hawaii.edu/Tutor/Make

Простые Makefiles удобны для проектов с небольшим количеством файлов. После того, как вас укусил segfault из-за отсутствия перекомпиляции (забыл указать заголовочный файл в.o: dependencies), вы должны перейти к полноценной системе сборки, такой как cmake. cmake генерирует Makefiles для вас, но важно понимать основы Makfiles для интерпретации сообщений об ошибках.

Другие вопросы по тегам