LINUX.ORG.RU

Несколько целей в проекте Qt


0

1

Возник следующий вопрос. Как сделать так, чтобы при сборке проекта одновременно создавались два исполняемых файла, различающиеся линковкой с различными библиотеками? Исходники одни и те же. Такую штуку делал при помощи cmake, создавая две цели. А qmake это умеет? Что-то поиск в гугле не помог. Надеюсь на вашу помощь.

P.S. В качестве IDE использую QtCreator


Ответ на: комментарий от zJes

Что мешает использовать cmake в креаторе?

Наверное гемор с первичным освоением cmake и невозможность добавлять файлы непосредственно в дереве проекта.

pathfinder ★★★★ ()
Ответ на: комментарий от pathfinder

> Наверное гемор с первичным освоением cmake

Такую штуку делал при помощи cmake, создавая две цели.


Ну да...

zJes ★★ ()

В самом qmake поддержки такого нет, но можно использовать SUBDIRS (прошники выносишь в отдельные папки). Если не получится так - пиши, объясню подробнее.

trex6 ★★★★★ ()
Ответ на: комментарий от Sectoid

Хаха, смешно! Именно так и искал, но ссылки ведут на создание целей для различных платформ, что не совсем то, что мне надо. Либо я что-то упустил.

dOzEr ()
Ответ на: комментарий от trex6

Я впринципе уже понял, что надо именно так. Попробую. Будут вопросы - задам.

dOzEr ()

Задачу решил, всем спасибо

Тем, кому интересно...

Структура проекта:

bin
obj
src
project1/project1.pro
project2/project2.pro
project.pri
project.pro

project.pri

QT       += core gui

TEMPLATE = app

DESTDIR = ../bin

OBJECTS_DIR = ../obj
UI_DIR = ../obj/.ui
MOC_DIR = ../obj/.moc
RCC_DIR = ../obj/.rc

SOURCES += \
    ../src/main.cpp \
    ../src/mainwindow.cpp \

HEADERS  += \
    ../src/mainwindow.h \
    ../src/main.h \

FORMS    += \
    ../src/mainwindow.ui \

OTHER_FILES += \
    ../styles/default.qss

LIBS    += \
    -lcommon1 \
    -lcommon2

RESOURCES += \
    ../resources.qrc

project1/project1.pro

include( ../project.pri )

TARGET = project1

LIBS    += -lsome1

project2/project2.pro

include( ../project.pri )

TARGET = project2

LIBS    += -lsome2

project.pro

TEMPLATE = subdirs

SUBDIRS = project1 project2

dOzEr ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.