crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Статическая сборка Qt (Windows)
greh
  опции профиля:
сообщение 26.11.2009, 7:43
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 23.11.2009
Пользователь №: 1252

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




Репутация:   0  


Предлагаю в этой теме сделать инструкцию от и до. У меня появилась проблема с компиляцией:

CODE
...
Qt is now configured for building. Just run mingw32-make.
To reconfigure, run mingw32-make confclean and configure.


C:\Qt\2009.04\qt>mingw32-make sub-src
cd src\winmain\ && mingw32-make
'mingw32-make' is not recognized as an internal or external command,
operable program or batch file.
mingw32-make: *** [sub-winmain-sub_src_target_ordered] Error 1


что впринципе понятно, ведь в папке winmain нет mingw32-make.exe и винда говорит мол я незнаю, что это такое и что мне надо делать. Далее закидываем туда все нужные exe-шники и компиляция пошла, но не на долго, ведь нужно во все папки закидывать. Есть способ проще?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
niXman
  опции профиля:
сообщение 26.11.2009, 7:47
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 169
Регистрация: 18.6.2008
Пользователь №: 204

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




Репутация:   0  


Цитата(greh @ 26.11.2009, 7:43) *
Далее закидываем туда все нужные exe-шники и компиляция пошла, но не на долго, ведь нужно во все папки закидывать.

Развеселил :D
В переменную среды PATH пропиши путь к каталогу с бинарниками мингва.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 26.11.2009, 8:12
Сообщение #3


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

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

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




Репутация:   94  


greh, для начала прочитай как не статически собирать, ведь специально писали
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
greh
  опции профиля:
сообщение 26.11.2009, 8:14
Сообщение #4


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 23.11.2009
Пользователь №: 1252

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




Репутация:   0  


Цитата(niXman @ 26.11.2009, 9:47) *
Цитата(greh @ 26.11.2009, 7:43) *
Далее закидываем туда все нужные exe-шники и компиляция пошла, но не на долго, ведь нужно во все папки закидывать.

Развеселил :D
В переменную среды PATH пропиши путь к каталогу с бинарниками мингва.

спасибо! пошло компиляться :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
greh
  опции профиля:
сообщение 26.11.2009, 15:31
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 23.11.2009
Пользователь №: 1252

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




Репутация:   0  


Напишу сам небольшую инструкцию, может кому ещё пригодится.

Это лишь один из вариантов установки:

1. Скачиваем Qt и MinGW
2. Устанавливаем Qt и MinGW(ставим нужные галочки в установке, если не знаете что надо лучше поставить все). Также желательно оставить путь для установки по умолчанию.
3. Если вы оставили путь установки по умолчанию, то далее можете просто копировать команды. Для начала установим переменную окружения PATH: Пуск->Настройки->Панель управления->Система->Вкладка Дополнительно->Переменные окружения выделяем PATH нажимаем редактировать и добавляем строку C:\MinGW\bin
4. Открываем Пуск->Выполнить пишем cmd нажимаем Enter, в появившемся окне пишем:
cd C:\Qt\2009.4\qt
Важно! Ваша версия Qt может отличаться. За место 2009.4 напишите свою, узнать можно открыв через проводник папку Qt на диске C:\
Далее пишем:
configure -static -platform win32-g++
Ждём около 15 минут.
Далее пишем:
mingw32-make sub-src
Ждём 2-4 часа.
5. Готово. Теперь ваши проекты будут компилироваться статично. У меня получилось 75 мб экзешник против >150 мб с dll-ками.


Забыл добавить, в файле C:\Qt\2009.04\qt\mkspecs\win32-g++\qmake.conf в строку
QMAKE_LFLAGS = -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
дописываем -static :
QMAKE_LFLAGS = -static-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc

теперь точно всё.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Kagami
  опции профиля:
сообщение 26.11.2009, 15:54
Сообщение #6


Старейший участник
****

Группа: Участник
Сообщений: 601
Регистрация: 2.2.2009
Пользователь №: 523

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




Репутация:   9  


А mingwm10.dll? :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
greh
  опции профиля:
сообщение 26.11.2009, 15:59
Сообщение #7


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 23.11.2009
Пользователь №: 1252

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




Репутация:   0  


не требует.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 26.11.2009, 16:11
Сообщение #8


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

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

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




Репутация:   94  


Цитата(greh @ 26.11.2009, 18:31) *
-static-enable-stdcall-fixup
не слитно!

Цитата(greh @ 26.11.2009, 18:31) *
Напишу сам небольшую инструкцию, может кому ещё пригодится.
по сути инструкция таже, что и я дал ссылку, только рассчитано на работу с единственной версией Qt.

Цитата(greh @ 26.11.2009, 18:59) *
не требует.
изучи это место внимательно. Таки требует, тык
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
greh
  опции профиля:
сообщение 26.11.2009, 17:04
Сообщение #9


Студент
*

Группа: Участник
Сообщений: 48
Регистрация: 23.11.2009
Пользователь №: 1252

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




Репутация:   0  


Цитата(Litkevich Yuriy @ 26.11.2009, 18:11) *
Цитата(greh @ 26.11.2009, 18:31) *
Напишу сам небольшую инструкцию, может кому ещё пригодится.
по сути инструкция таже, что и я дал ссылку, только рассчитано на работу с единственной версией Qt.

Конечно с модератором спорить себе дороже :D но всё же, в инструкции которую написал я нет *.bat файлов, в этом варианте можно начать с пункта 3, если Qt уже была установлена(как в моём случае), а не собирать её из исходников. Да и занимает она меньше места по кол-ву текста.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 26.11.2009, 17:14
Сообщение #10


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

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

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




Репутация:   94  


Цитата(greh @ 26.11.2009, 20:04) *
а не собирать её из исходников.
а статическую сборку ты из чего делал?
Батник в wiki-статье нужен для переключения между разными сборками Qt
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 28.12.2024, 18:54