Russian Qt Forum
Октябрь 02, 2024, 01:26 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: qmake: разделить debug и release  (Прочитано 10377 раз)
pethead
Гость
« : Ноябрь 17, 2010, 17:38 »

пишу в pro файле

debug {
   CONFIG += qt qtestlib debug
}
release {
   CONFIG += qt
}

и получаю что и дебаг и релиз собираются с применением qtestlib, ведь в релизе не задано?
Записан
deaks
Гость
« Ответ #1 : Ноябрь 17, 2010, 18:04 »

вот так попробуйте:
Код:
debug:   CONFIG += qt qtestlib debug
release:   CONFIG += qt

думаю что это неравнозначно вашему тексту)
Записан
pethead
Гость
« Ответ #2 : Ноябрь 17, 2010, 19:33 »

не помогло. только явное удаление qtestlib собирает прогу без нее.
даже вручную убрал из makefile упоминания о testlib все равно собралось с ней, а когда убрал в pro то без нее.
%-)
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Ноябрь 17, 2010, 23:50 »

запись подобна - масло масляное:
debug {
   CONFIG += qt qtestlib debug
}
Если отладка, то
Qt + qtestlib + отладка

Сначала определи оба режима сборки:
CONFIG += debug_and_release
Собирать всё
CONFIG += debug_all

И для разных типов сборки определи разные каталоги назначения, а то всегда в конце будет отладочная версия (перетрёт релизную)

CONFIG (debug, debug|release) {
   OBJECTS_DIR = $${TMP_DIR}/debug
   # Console added in debug mode
   CONFIG       += console
}else{
   OBJECTS_DIR = $${TMP_DIR}/release
}

TMP_DIR сам задай, путь относительный, например ./tmp
Записан

Юра.
pethead
Гость
« Ответ #4 : Ноябрь 18, 2010, 04:33 »

так ведь дебаг\релиз и так в разных каталогах.
суть в чем: при сборке с тестлибой при запуске гуи приложения появляется консоль с сообщениями qDebug. без тестлиба ее нет. вот я и хотел разделить чтобы в релизе ее не было или наоборот.
Записан
deaks
Гость
« Ответ #5 : Ноябрь 18, 2010, 10:21 »

хмм...то есть либа нужна только для вывода отладочной информации?
и вас напрягает только вывод qDebug?
Записан
gogi
Гость
« Ответ #6 : Ноябрь 18, 2010, 11:51 »

суть в чем: при сборке с тестлибой при запуске гуи приложения появляется консоль с сообщениями qDebug. без тестлиба ее нет. вот я и хотел разделить чтобы в релизе ее не было или наоборот.

Это делается CONFIG += console
Записан
pethead
Гость
« Ответ #7 : Ноябрь 18, 2010, 12:54 »

все равно не получилось сделать релиз без консоли, если в дебаге она есть то и в релизе тоже.
Записан
deaks
Гость
« Ответ #8 : Ноябрь 19, 2010, 14:57 »

если вам критично, чтобы не отображалось только отладочная информация, конфигурируйте debug с ключом QT_NO_DEBUG_OUTPUT
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #9 : Ноябрь 19, 2010, 14:59 »

1. попробуй указать CONFIG -= console
2. Use CMake, Luke.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 23.