Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: taco05 от Ноябрь 16, 2006, 02:04



Название: Компиляция?!
Отправлено: taco05 от Ноябрь 16, 2006, 02:04
Всем привет.
У меня Дизайнер Qt версии 3.3.6 под линуксом.
Я в этом деле новичок. Просмотрел форумы статьи, но ничего не нашол.
Создал диалоговое окно .ui а как его скомпилировать?
в одной книге нашол что типа прописать нада qmake -project, qmake xzx.pro, make
Проделал это всё и в конце получился файл с расшерением .о
Как правельно компилировать? :?:


Название: Компиляция?!
Отправлено: Dendy от Ноябрь 16, 2006, 02:17
Советую посмотреть ЛЮБОЙ пример из Qt3, в котором обнаружишь .ui файл. Грубо говоря, его нужно добавить в файл проекта:

Код:
FORMS += myform.ui


В своём коде отнаследоваться от класса, которьІй генерируется из .ui файла (в XML формате) в C++ код. Далее:

Код:
qmake myproject.pro
make


Название: Компиляция?!
Отправлено: nkly777 от Ноябрь 16, 2006, 15:47
Чтобы скомпилировать программу нужно:
первое:
Код:

qmake -project

Второе:
Добавить в получившийся файл .pro строку (если ее нет)
Код:

FORMS += myform.ui

Третье:
Код:

qmake

Четвертое:
Код:

make

В результате получится исполняемый файл


Название: Компиляция?!
Отправлено: BaltikS от Ноябрь 16, 2006, 17:16
И ещё файл main написать, в котором вызвать унаследованный класс! А вообще книгу Бланшета почитать по внимательнее


Название: Компиляция?!
Отправлено: taco05 от Ноябрь 16, 2006, 17:54
В итоге получился только хеадер файл. :?:
могу если нада выложить код мэйкфайла или про. :roll:


Название: Компиляция?!
Отправлено: Dendy от Ноябрь 16, 2006, 18:25
Хватит только .pro


Название: Компиляция?!
Отправлено: taco05 от Ноябрь 16, 2006, 20:48
Код:
######################################################################
# Automatically generated by qmake (1.07a) Thu Nov 16 15:47:37 2006
######################################################################

TEMPLATE = app
CONFIG -= moc
INCLUDEPATH += .

# Input
INTERFACES += form1.ui
FORMS += myform.ui


Последнюю строчку сам добавил.
и ещё скачал книгу, ссылка здесь была на форуме. делал первый пример, такая же фигня.[/list]


Название: Компиляция?!
Отправлено: Dendy от Ноябрь 16, 2006, 22:31
Ну а где тьІ предполагаешь будеть точка входа в программу? qmake -project - ето всего лишь вспомагательньІй способ, чтобьІ создать файл проекта из исходников. Его вообще не стоит юзать, разве что для ооочень больших проектов, портируемьІх с другой средьІ разработки.

Тебе нужно добавить по крайней мере исходник, в котором будет функция main().

Код:
SOURCES += main.cpp


А в функции main() чтоб бьІло создание окна.


Название: Компиляция?!
Отправлено: taco05 от Ноябрь 16, 2006, 23:56
Код:
#include <qapplication.h>
#include "finddialog.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
FindDialog *dialog = new FindDialog;
app.setMainWidget(dialog);
dialog->show();
return app.exec();
}

вот код из учебника.
прописал -project  qmake  make
а приложение не получилось :cry: [/quote]


Название: Компиляция?!
Отправлено: Dendy от Ноябрь 17, 2006, 07:10
Коротко:
Забудь про qmake -project

Пишешь руками файл проекта:

form.pro
Код:
FORMS += form.ui
SOURCES += main.cpp


Здесь: form.pro - имя твоего файла проекта, form.ui - имя твоего UI файла, main.cpp - имя твоего исходника.

Теперь с командной строки в каталоге с файлом проекта:

Код:
qmake
make


Название: Компиляция?!
Отправлено: BaltikS от Ноябрь 17, 2006, 09:46
Да что париться, зайди в examples и посмотри пример, например MDI...

P.S.   в 3 Qt qmake -project, qmake, make работает замечательно и для простейшей программы его вполне достаточно...