Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 05, 2006, 16:20 Qt 4.1.3 CodeBlock 1 rc2
Пытаюсь прикрутить ее к Codeblocks и есть проблемы: 1. после Designer'а получаеться ui файл (как я понял из него надо создать *.h и *.cpp) header делаеться легко командой uic *.ui -o *.h Как создать cpp файл я не могу понять. 2. При компиляции уже готовых проектов из примеров Qt по некоторым идут ошибки при линовке. Нужно прописывать Codeblock'у qmake и make. Как это сделать я тоже не понял Здесь на сайте уже видел посты на эти темы но там вскольз мне хотелось бы поподробнее. Помогирте пожалуйста. Название: Qt + codeblock + Windows Отправлено: codeLocker от Июнь 05, 2006, 17:04 "uic *.ui -o *.h" - это делать не надо.
Пропиши в файле проекта (.pro) в секциях SOURCES, FORMS и HEADERS файлы которые у тебя в проекте. Потом делаешь qmake и mingw32-make (если используешь MinGW). Так же посмотри что бы в переменной окружения path были пути к C:\Qt\4.1.3\bin\ и C:\MinGW\bin\ (это для моего случая). qmake будет генерировать 3 файла Makefile, Makefile.Debug и Makefile.Release в которых и будет указана команда uic для всех файлов которые указаны в проекте в секции FORMS. Так же не забудь указать для классов которые используют механизм сигналов и слотов Q_OBJECT. Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 05, 2006, 17:24 Вот мой pro файл
Код:
Вот application.qrc Код:
просто qmake в этой директории ничего не создает к нему нужны еще какие то параметры? Название: Qt + codeblock + Windows Отправлено: codeLocker от Июнь 05, 2006, 17:46 Нухно в pro файле
Код: FORMS = mainwindow.ui если у тебя форма так называется Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 06, 2006, 08:22 Это пример из examples там нет mainwindow.ui я его хотя бы скомпилить пытаюсь ничего не выходит пишит не найден make файл *** No rule to make target `Makefile'. Stop. Как создать этот самый make файл - qmake не хочет создавать. Может какие-то дополнительные параметры нужны
добавлено спустя 1 час: Вроде разобрался: Чтобы создать *.pro файл нужно запустить qmake -project Чтобы создать Makefile, Makefile.Debug и Makefile.Release нужно qmake -makefile Ну и уже затем mingw32-make.exe -f Makefile.Release. Но из kodeblok почему-то отказываеться работать пишет [*** No rule to make target `default'. Stop.] Хочеться именно в codebloks чтобы с отладчиком IDE была :( Название: Qt + codeblock + Windows Отправлено: codeLocker от Июнь 06, 2006, 09:46 Тебе нужно в свойствах проекта добавить цели: release, debug и clean. Потом в зависимости от выбранной цели будет собераться проект.
Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 06, 2006, 10:11 Спасибо это помогло. Могу нормально компилить проекты из examples
Теперь пробую создать свой проект: :( 1 Делаю ui файл; 2 Для него делаю qmake -project и qmake -makefile; 3 Запускаю mingw32-make.exe -f makefile; После чего у меня в директории проекта появляеться ui_myproject.h (ui_myproject.cpp так и не создался) Итог я так и не понял что нужно делать с ui файлом чтобы преобразовать его для компиляции проекта? :( Доки с примерами так мало. А уж как подготовить проект к компиляции после Designer'a этого я и вовсе нигде не нашел :( Название: Qt + codeblock + Windows Отправлено: codeLocker от Июнь 06, 2006, 10:38 Нужно в файле проекта (pro) указать все файлы, которые у тебя в проекте (заголовочные, срр и формы). Не забыть для обертки класса который будет у тебя использовать форму созданую в дизайнере указать макрос Q_OBJECT. Вот пример моего файла с загаловками
Код:
Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 06, 2006, 10:58 А так cpp файлик надо самому писать автоматизированно из ui можно создать только .h - заголовочный файл?
Название: Qt + codeblock + Windows Отправлено: codeLocker от Июнь 06, 2006, 11:12 В Code::Blocks есть мастер создания классов, используй его.
Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 06, 2006, 11:19 Так он переписывает и header файл и в cpp левое создает?
Название: Qt + codeblock + Windows Отправлено: L.Marvell от Июнь 06, 2006, 13:27 Читаем Assistant -> Overviews -> Qt Designer Manual ->Using Forms and Components
Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 06, 2006, 15:15 Цитата: "L.Marvell" Читаем Assistant -> Overviews -> Qt Designer Manual ->Using Forms and Сomponents Я это уже читал. Выходит что в Qt 4 Designer что есть что нет. Толку от того что он мне поможет заголовочный файл создать из ui - минимум. Получаеться весь файл cpp к форме придется самому писать? :( Название: Qt + codeblock + Windows Отправлено: crocus от Июнь 06, 2006, 15:47 Цитировать Выходит что в Qt 4 Designer что есть что нет. Толку от того что он мне поможет заголовочный файл создать из ui - минимум. Получаеться весь файл cpp к форме придется самому писать? Не он тебе сразу офисный пакет из трех твоих форм сгенерирует!!! Абалдеть !!! Ладно мануал на английском, так хоть Бланшет почитай что-ли (ее в сети много), этож никакого понимания что делаешь?? http://linuxcenter.ru/lib/books/qt3/ Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 06, 2006, 15:53 Я с Builder'a. За ссылку спасибо. Понимания, правда, нет.
Название: Qt + codeblock + Windows Отправлено: SLiDER от Июнь 11, 2006, 14:41 Уффф. Ну вы тут и по написАли. А объяснить человеку, что по ui-файлу в четверке ни какие cpp-файлы не создаются так и не сподобились.
В кратце история такая. В четвертой версии Qt изменилась идеология работы с файлами формы. Теперь по ним генерируется только заголовочный файл с, так называемым, user interface контейнером (ui). Который содержит в себе набор виджетов, которые вы создали в дизанере и функцию их создания и расскладки в соответствии с описанием из ui-файла (в реальности там еще кое чего есть но на первом этапе это не важно). И вам, как пользователю, только и надо, что включить этот контейнер (например так Ui::BlaBlaBla ui) в ваш класс (формы, диалога или чего у вас там), и вызвать в конструкторе функцию ui.setupUI(this). Вот в общем то и все. P.S. А в добавление к чтению документации советую заглянуть в раздел примеров /examples/designer. Название: Qt + codeblock + Windows Отправлено: Boris от Июнь 13, 2006, 14:06 SLiDER, спасибо!!!
Название: Qt + codeblock + Windows Отправлено: Insomniac от Октябрь 23, 2006, 22:53 Спрошу сдесь - пытаюсь в Code::Blocks откомпилировать программу. При сборке получаю вот такую ошибку
Код: obj\Debug\find_dialog.o(.text+0x175): In function `ZN11TFindDialogC2EP7QWidget': Ну и еще несколько таких же. Хотя при компиляции и сборке с консоли(которая типа "cmd") - никаких проблем не возникает. Qt4.1.4 и MinGW32. |