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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Организация проекта  (Прочитано 4002 раз)
bob
Гость
« : Ноябрь 30, 2005, 09:53 »

В корневой папке проекта стало творится, что-то неудобь сказуемое изза огромного количества файлов. Шокированный  Решил распихать все внутри проекта по папкам. Распихал. Посмотрел - глаз радуется.  Веселый  Потом создал в дизайнере очередную форму положил ее в соответствующую папку, стал компилять. Ан шиш. Не компилит, т.е. не создает ui_myForm.h  Грустный  Заставил работать только когда ui-файл выложил в корень проекта. Как я понимаю мне нужно путь к папке с ui-файлами прописать в файле проекта, но в каком именно разделе? Такая же фигня если файл ресурсов лежит не в корне, компилятор его не видит. Когда разложил все по папкам, то в pro-файле указал где хидеры, где сырцы, и где qrc.
Записан
Dendy
Гость
« Ответ #1 : Ноябрь 30, 2005, 10:57 »

В PRO-файле нужно указывать полные относительные пути. Например, так:

Код:
SOURCES = \
  main.cpp \
  widgets/yowidget.cpp \
  widgets/heywidget.cpp

FORMS = \
  ui/myForm.ui \
  ui/myCoolForm.ui

RESOURCES = \
  res/myFakeResources.qrc


А весь прикол вот в чём: qmake не создаёт правило компилляции ui-файла, если последний не был включён ни в одном файле исходника. Другими словами, если он не нашёл строчку:

Код:
#include "ui_myForm.h"


Чудкс нет. Можешь сам проверить содержимое Makefile, создаваемого с помощью qmake. А конкретнее правило генерации:

Код:
ui_myForm.h:


Если в исходниках присутствует инклуд H-файла ето правило используется, иначе - нет.
Записан
bob
Гость
« Ответ #2 : Ноябрь 30, 2005, 11:54 »

В хидере класса наследника от формы я указываю "ui_form.h" и все компилится, но ui_form.h создается в корневой папке проекта. А если пишу "Headers/ui_form.h", то компилятор трубит о том, что не находит ui_form.h по указанному пути. Как мне заставить компилятор создать ui_form.h не в корне, а Headers?
Записан
Saint
Гость
« Ответ #3 : Декабрь 06, 2005, 15:39 »

по-мойму UI_DIR = ui, так же можно все моки объектники создавать в отдельном каталоге.
смотри qmake Variable Reference
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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