crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> проблема с qt creator`ом
SDLM
  опции профиля:
сообщение 29.6.2009, 8:12
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 16
Регистрация: 19.4.2009
Пользователь №: 694

Спасибо сказали: 0 раз(а)




Репутация:   0  


ОС WindowsXP SP3
Вот решил посмотреть что за зверь такой Qt, нашел обзорную статью
http://voxel3d.strana.de/articles/mingwqtemacs.html
скачал статическую сборку(qt-sdk-win-opensource-2009.03.exe), поставил.
Но сразу же возникли проблемы...
захожу в Qt Command Prompt, и пытаюсь скомпилить простейший проект.
qmake -project // отработала сразу и нормально
qmake // не хотела работать, выдавала следующее:

Could not find mkspecs for your QMAKESPEC(win32-g++) after trying:
C:/qt-greenhouse/Trolltech/Code_less_create_more/Trolltech/Code_less_cre
ate_more/Troll/4.5.0/qt\mkspecs
Error processing project file: D:/RAM/test3/test3.pro

Проблема решилась добавлением в каталог ...Qt\2009.03\qt\bin файла qt.conf с содержанием:
[Paths]
Prefix = D:/Programss/Qt/2009.03/qt

в идеале содержание должно быть:
[Paths]
Prefix =
Documentation = doc
Headers = include
Libraries = lib
Binaries = bin
Plugins = plugins
Data = .
Translations = translations
Settings = .
Examples = .
Demos = .

Судя по офф описанию этого файла
http://doc.trolltech.com/4.5/qt-conf.html

ну хорошо, в итого команда qmake, отработала, а вот команда make нивкакую. Посмотрел на exe-шники пакета MinGW, решил попробовать запустить mingw32-make.exe, т.е. просто команду mingw32-make, проэкт собрался, Но exe-шник проэкта запускаться из под винды не хочет, только из под консоли, т.к. при запуске используются DLL библиотеки как Qt так и MinGW, а теперь первая группа вопросов:
1. что делать с командой make, ока вообще должна работать ? в чём проблема ?
2. команда mingw32-make нормально заменяет команду make или ...?
3. что необходимо сделать что бы на выходе получился exe-шник не требующий сторонних библиотек?
(Где то видел рекомендацию в файле .pro дописать CONFIG += static, не помогло)

Ок. Первый проект так или иначе скомпилировал, теперь заходим в Qt Creator, опять таки создаю весьма простенький проект, но при попытке скомпилировать получаю следующее:

Running build steps for project first_step...
Starting: D:/Programss/Qt/2009.03/qt/bin/qmake.exe D:/RAM/test4/first_step/first_step.pro -spec C:/qt-greenhouse/Trolltech/Code_less_create_more/Trolltech/Code_less_create_more/Troll/4.5.0/qt/mkspecs/win32-g++ -r
Failure to read QMAKESPEC conf file c:/qt-greenhouse/Trolltech/Code_less_create_more/Trolltech/Code_less_create_more/Troll/4.5.0/qt/mkspecs/win32-g++\qmake.conf.
Error processing project file: D:/RAM/test4/first_step/first_step.pro
Exited with code 3.
Error while building project first_step
When executing build step 'QMake'

пробовал искать решения данной проблемы, ничего не нашел :(
пробовал сам пошарить по настройкам Creator`а вообще ничего похожего не нашел :(
Ну что делать, решил применить самый тупой метод, банально создать требуемый каталог
mkdir C:\qt-greenhouse\Trolltech\Code_less_create_more\Trolltech\Code_less_create_more\Troll\qt\mkspecs\win32-g++
и скопировать туда содержимое из каталога
...\Qt\2009.03\qt\mkspecs\win32-g++\

Проблема решилась, но всё же хотелось бы узнать есть ли цивильные пути её решения ??

P.S.
Собственно после выполнения всего выше описанного возникает смутное ощущение :unsure: , с одной стороны судя по демкам сочетание MinGW + Qt очень много обещающее, и я весьма наслышан о том как многие разработчики хвалят Qt, но с другой стороны ... А вот нельзя было всё руками сделать ? что б конечный пользователь, что бы собрать свой первый проект, не тратил пол дня на выковыривание из инета решений каких то банальнейших проблем. Вот почему фаел qt.conf не лежал там где ему пологается ? и с Creator`ом тоже кривость ...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
SABROG
  опции профиля:
сообщение 29.6.2009, 8:45
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1207
Регистрация: 8.12.2008
Из: Russia, Moscow
Пользователь №: 446

Спасибо сказали: 229 раз(а)




Репутация:   34  


Тролли опять наверно забыли допатчить пути:

Thanks for reporting that, seems that we forget to patch some of the  
paths while installing.


Цитата(SDLM @ 29.6.2009, 9:12) *
команда make нивкакую


Не должно быть в MinGW команды make. Когда ставишь пакет MSYS там идет проверка на файлик make в директории bin, и если его там нет, то пишется по английски типа "Проверяем существования файлика make: не найдено. Так держать!". Если собирать программы из под MSYS, то там используют совершенно разные make, для MSYS make.exe, дла CMD mingw32-make. Если насильно переименовать mingw32-make в make, то программы под MSYS могут отказаться собираться. Т.ч. используй всегда строчку "mingw32-make", если ты не в MSYS.

Цитата
что необходимо сделать что бы на выходе получился exe-шник не требующий сторонних библиотек?


Искать решение в гугле. Много статей на эту тему написано. А потом пожинать плоды подводных камней с отсутствующей системой плагинов (кстати некоторые из них физически не могут быть слинкованы статически, а значить их использовать нельзя будет) и исключений, которые необходимы тому же QtConcurrent.

Сообщение отредактировал SABROG - 29.6.2009, 8:46
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 2.3.2025, 10:01