Вот строки, которые я добавил в моем .pro, чтобы установить настраиваемый dir.Настройка пути Makefile с qmake
BASEPATH = ../some/path/
CONFIG(debug, debug|release) {
BUILDDIR = $${BASEPATH}/debug
} else {
BUILDDIR = $${BASEPATH}/release
}
OBJECTS_DIR = $${BUILDDIR}/obj
MOC_DIR = $${BUILDDIR}/moc
RCC_DIR = $${BUILDDIR}/rcc
UI_DIR = $${BUILDDIR}/ui
MAKEFILE = $${BUILDDIR}/Makefile
Однако, он терпит неудачу с ошибкой:
error : No rule to make target `../project/project.pro', needed by `Makefile'. Stop.
Это хорошо работает, если я удалить MAKEFILE=...
линию, но я не хочу, чтобы Makefile, который будет выводиться в том же директории, чем исходные файлы ,
Я ищу какую-то невозможную вещь или MAKEFILE
Неверная переменная для редактирования? Спасибо.
Да, обычно я создаю тень, но я явно хотел указать его в .pro, а не в .pro.user, так что для всех каталог сборки будет таким же, независимо от конфигурации и т. Д. –
В этом случае я боюсь, что не могу вам помочь. Я прочитал документацию переменной MAKEFILE и попробовал ваш .pro-файл различными способами и обнаружил, что то, что вы пытаетесь сделать, похоже, не поддерживается: MAKEFILE задает ** имя ** файла Makefile, только имя, а не его путь: 'MAKEFILE: эта переменная указывает имя файла Makefile, который qmake должен использовать при выводе информации о зависимостях для построения проекта. Значение этой переменной обычно обрабатывается qmake или qmake.conf и редко нуждается в изменении. ' – Bill
Eek ok, я прочитал его, но я этого не понял. Во всяком случае, я приму свой ответ, потому что теневая сборка - это ответ на мой вопрос в том, как я его сформулировал. –