crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Компиляция Qt приложений в Windows XP, Помогите...
Гость_Psi_*
сообщение 9.9.2008, 1:30
Сообщение #1





Гости








    


Установлены Qt 4.4.1 и QDeveloper, при попытке скомпилировать простейшую вещь:
#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
     QApplication app(argc, argv);
     QLabel label("WAZAAA");
     label.show();
     return app.exec();
}


В Qdevelopere выдаёт вот такое (дополнительно установлены Dev-C++ и Cygwin B20 для gcc и g++):
Цитата
Сборка (make)...
make -f Makefile.Debug
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I'c:/Qt/4.4.1/include/QtCore' -I'c:/Qt/4.4.1/include/QtCore' -I'c:/Qt/4.4.1/include/QtGui' -I'c:/Qt/4.4.1/include/QtGui' -I'c:/Qt/4.4.1/include' -I'c:/Qt/4.4.1/include/ActiveQt' -I'debug' -I'.' -I'c:/Qt/4.4.1/mkspecs/default' -o debug/newfile.o newfile.cpp
cc1plus.exe: Invalid option `threads'
make[1]: *** [debug/newfile.o] Error 1
make: *** [debug] Error 2
---------------------- Сборка завершена с 1 ошибками ----------------------

make вроде который с дельфёй шел, при замене на nmake от MSVS2005 последние две строчки меняются на
Цитата
NMAKE : fatal error U1077: 'C:\cygnus\cygwin-b20\H-i586-cygwin32\bin\g++.EXE' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 8\VC\bin\nmake.exe"' : return code '0x2'
Stop.


При попытке скомпилировать в MSVS2005 и прописывании вручную include и lib для Qt отказывается понимать *.plr файлы(ошибка чтения), *.lib'ов в папке lib вообще нет.

Что я делаю не так? Подскажите, пожалуйста.
Под убунтой хади херон всё компилируется без проблем, может есть какой-нибудь способ быстренько кросс-компиляцию настроить?
Заранее, спасибо!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 9.9.2008, 1:51
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(Гость_Psi_* @ 9.9.2008, 5:30) *
Установлены Qt 4.4.1
что за сборка? автоустановщик? или сам собирал?
прогу надо компилить тем компилятором которым Qt'явые dll'ки собраны.
автоустановщик собран с помощью MinGW32.

Цитата(Гость_Psi_* @ 9.9.2008, 5:30) *
может есть какой-нибудь способ быстренько кросс-компиляцию настроить?
читай тему рядом "Компиляция в Linux для Windows"

P.S. обсуждение сборки и работы с Qt нужно вести в одноименном форуме
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Psi_*
сообщение 9.9.2008, 11:13
Сообщение #3





Гости








    


Автоустановщик, при установке еще скачал их собственный MinGW.

Проблема относиться даже не к Qt, а к make'у, чувствую что проблему в этой строчке:
cc1plus.exe: Invalid option `threads', что это за cc1plus.exe и что можно с ним сделать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 9.9.2008, 11:35
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(Гость_Psi_* @ 9.9.2008, 15:13) *
Проблема относиться даже не к Qt, а к make'у, чувствую что проблему в этой строчке:
cc1plus.exe: Invalid option `threads', что это за cc1plus.exe и что можно с ним сделать?
make тоже должен быть гнутый, попробуй взять батник, который я описывал здесь (qt432.bat), подправь его под себя, запусти и в командной строке в каталоге кде лежит твой файл проекта выполни:
qmake
make
не покидая этой командной строки попробуй запустить свою программу.

О результатх отпишись.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Psi_*
сообщение 9.9.2008, 15:50
Сообщение #5





Гости








    


О! Спасибо большое! Благодаря этому батнику повбивал переменные среды, а из Path выкинул cyqwin'а пути и всё заработало.
Вот только без путей Qt bin и mingw bin в PATH, программа не желает запускаться(mingw*.dll), получается на каждой машине нужно будет Qt ставить, чтобы программа работала?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 9.9.2008, 15:53
Сообщение #6


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

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




Репутация:   40  


Цитата(Гость_Psi_* @ 9.9.2008, 16:50) *
получается на каждой машине нужно будет Qt ставить, чтобы программа работала?
Нет, достаточно будет таскать с приложением необходимые ему библиотеки, вроде: QtCore.dll, QtGui.dll и ...
Зависимости можно посмотреть с помощью: Dependency Walker.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 9.9.2008, 16:28
Сообщение #7


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(Гость_Psi_* @ 9.9.2008, 19:50) *
получается на каждой машине нужно будет Qt ставить, чтобы программа работала?
Цитата(ViGOur @ 9.9.2008, 19:53) *
Нет, достаточно будет таскать с приложением необходимые ему библиотеки, вроде: QtCore.dll, QtGui.dll и ...
либо положить их куда-нибуть, и записать путь к ним в переменную PATH
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 19.4.2024, 20:28