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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Пример из книги Жасмин Бланшет  (Прочитано 4294 раз)
Alex_SimBeat
Гость
« : Апрель 23, 2012, 12:03 »

Доброго времени суток! Вот начал практиковаться с Qt (до этого лет 7 занимался мат.моделированием и всем прочим в Матлабе). Установил "Qt Creator 2.0.1 основан на Qt 4.7.0" (из справки), система: Windows XP 32бит. "Забил" в качестве консольного приложения первый же пример из книжки:

#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QLabel *label = new QLabel("...");
    label->show();
    return a.exec();
}

при сборке сообщает про ошибки: QApplication: No such file or directory ... и далее путь к моему несчастному main.cpp. В книжке сказано, что при установке под винду все переменные среды пропишутся автоматически. Что не так с самого начала? )))
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #1 : Апрель 23, 2012, 12:08 »

один из вариантоа в pro файл добавить строчку

Код:
QT += gui

и то что вы сделаете не может быть консольным приложением, так как используется QApplication вместо QCoreApplication и QLabel это GUI элемент.
Записан
Alex_SimBeat
Гость
« Ответ #2 : Апрель 23, 2012, 13:15 »

один из вариантоа в pro файл добавить строчку

Код:
QT += gui

и то что вы сделаете не может быть консольным приложением, так как используется QApplication вместо QCoreApplication и QLabel это GUI элемент.

Да, да, конечно! По шаблону консольного приложения Qt подключал ту самую библиотеку, что Вами указана. Добавил строчку в *.pro файл - получилось! ))) Только зачем окошко с черным экраном создается? Еще может подскажете, как использовать команду qmake -project в среде разработки Qt? Или необходима еще программа эмуляции командной строки? Скажем так, есть вариант собрать приложение с помощью IDE Qt? зачем вариант с qmake? Прошу прощения за вопросы, вероятно нелепые.

P.S: Запускаю созданный exe-шник, появляется окно консольного приложения (черное) и сообщение: не найден mingwm10.dll. Может и тут проконсультируете? Заранее, спасибо.
« Последнее редактирование: Апрель 23, 2012, 13:29 от Alex_SimBeat » Записан
V1KT0P
Гость
« Ответ #3 : Апрель 23, 2012, 13:55 »

P.S: Запускаю созданный exe-шник, появляется окно консольного приложения (черное) и сообщение: не найден mingwm10.dll. Может и тут проконсультируете? Заранее, спасибо.
А что тут консультировать. Какие библиотеки использовались при сборке приложения, те оно и требует. Обычно графическое кьют приложение требует: mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll. Все они находятся в кьютовской директории.
Записан
Alex_SimBeat
Гость
« Ответ #4 : Апрель 23, 2012, 14:18 »

P.S: Запускаю созданный exe-шник, появляется окно консольного приложения (черное) и сообщение: не найден mingwm10.dll. Может и тут проконсультируете? Заранее, спасибо.
А что тут консультировать. Какие библиотеки использовались при сборке приложения, те оно и требует. Обычно графическое кьют приложение требует: mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll. Все они находятся в кьютовской директории.

Бросил копии этих dll в папку с exe-шником, - все получилось. Но папка была по умолчанию создана кьютом. Путь к ней отдельной переменной системы необходимо определять? Или в чем тут фокус?
Записан
V1KT0P
Гость
« Ответ #5 : Апрель 23, 2012, 14:26 »

P.S: Запускаю созданный exe-шник, появляется окно консольного приложения (черное) и сообщение: не найден mingwm10.dll. Может и тут проконсультируете? Заранее, спасибо.
А что тут консультировать. Какие библиотеки использовались при сборке приложения, те оно и требует. Обычно графическое кьют приложение требует: mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll. Все они находятся в кьютовской директории.

Бросил копии этих dll в папку с exe-шником, - все получилось. Но папка была по умолчанию создана кьютом. Путь к ней отдельной переменной системы необходимо определять? Или в чем тут фокус?
Пропиши путь к этим библиотекам в PATH и он сам будет их находить. Только при распространении приложения не забывай класть нужные библиотеки.
Записан
Alex_SimBeat
Гость
« Ответ #6 : Апрель 23, 2012, 14:37 »

P.S: Запускаю созданный exe-шник, появляется окно консольного приложения (черное) и сообщение: не найден mingwm10.dll. Может и тут проконсультируете? Заранее, спасибо.
А что тут консультировать. Какие библиотеки использовались при сборке приложения, те оно и требует. Обычно графическое кьют приложение требует: mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll. Все они находятся в кьютовской директории.

Бросил копии этих dll в папку с exe-шником, - все получилось. Но папка была по умолчанию создана кьютом. Путь к ней отдельной переменной системы необходимо определять? Или в чем тут фокус?

С путями к dll разобрался. Как убрать консольное окно, что-то в файле проекта подредактировать нужно? Если, - да, то, что?
Записан
V1KT0P
Гость
« Ответ #7 : Апрель 23, 2012, 14:52 »

P.S: Запускаю созданный exe-шник, появляется окно консольного приложения (черное) и сообщение: не найден mingwm10.dll. Может и тут проконсультируете? Заранее, спасибо.
А что тут консультировать. Какие библиотеки использовались при сборке приложения, те оно и требует. Обычно графическое кьют приложение требует: mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll, QtGui4.dll. Все они находятся в кьютовской директории.

Бросил копии этих dll в папку с exe-шником, - все получилось. Но папка была по умолчанию создана кьютом. Путь к ней отдельной переменной системы необходимо определять? Или в чем тут фокус?

С путями к dll разобрался. Как убрать консольное окно, что-то в файле проекта подредактировать нужно? Если, - да, то, что?
Вроде как надо убрать строку:
Код:
CONFIG   += console
Записан
Alex_SimBeat
Гость
« Ответ #8 : Апрель 23, 2012, 15:01 »

Всем спасибо. Порядок для начала ))
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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