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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: не знаю как сделать из проекта полноценную программу  (Прочитано 6067 раз)
Lee Harvey Oswald
Гость
« : Март 04, 2010, 19:29 »

подскажите как сделать из проекта готовую программу, т.е. запускать её как обычный exe файл. как это сделать в QT creator'е 4.6 ?? есть какой то вариант кроме как таскать нужные библиотеки с собой?
не могли бы вы так же пояснить что такое статическая линковка))

знаю, что есть уже статьи на эту тему, но я не разу этого не делал и хотелось бы чтобы кто то подробно это объяснил, про линковку конечно я сам прочитать могу))) главное как либы прикрутить))
« Последнее редактирование: Март 04, 2010, 20:10 от Lee Harvey Oswald » Записан
gigabyte
Гость
« Ответ #1 : Март 04, 2010, 20:11 »

Для винды:
Ctrl+Shift+B в QtCreator
потом перещь dependency walker и смотришь какие библиотеки он используэт все что начинаэтся с Qt копируешь в в папку с готовым exe-шником и в принципе все.
Я потом еще проверял на другом компе если чего-то пропустил (БД драйвера).
Записан
Lee Harvey Oswald
Гость
« Ответ #2 : Март 04, 2010, 21:11 »

собственно как я понял надо через него exe открыть, ну вот я открыл, но он не все либы нашел, пишет что какие то не найдены...
к примеру эта самая mingwm10 которую он всегда требует))) и поиск на компе её не находит..
в общем знает кто как мне быть дальше?))
Записан
KuZ
Гость
« Ответ #3 : Март 04, 2010, 21:44 »

для того что тебе нужно собрать проект статически, сам с эти не разобрался, но на  форуме очень много раз обсуждалось.
Записан
Lee Harvey Oswald
Гость
« Ответ #4 : Март 04, 2010, 22:41 »

я как бэ в курсе и в первом сообщении это неявным образом видно)))
кто нить может написать что-то более содержательное, а главное чтобы оч понятно было)) а то вот видите не я один такой, кто не разобрался))

я терь научился с помощью dependency walker находить нужные либы и кидать в папку с файлом exe, но всётаки хотелось бы попробовать сделать эту самую линковку, мб с ней быдет лучше, т.к. в итоге размер приложения с либами вышел в 170мб =))) ахаха))
нашел статью как мне кажется интересную)) http://www.learnqt.com/tag/%D1%81%D1%82%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F-%D0%BB%D0%B8%D0%BD%D0%BA%D0%BE%D0%B2%D0%BA%D0%B0/
« Последнее редактирование: Март 04, 2010, 23:00 от Lee Harvey Oswald » Записан
gigabyte
Гость
« Ответ #5 : Март 04, 2010, 22:54 »

для того что тебе нужно собрать проект статически, сам с эти не разобрался, но на  форуме очень много раз обсуждалось.
Да это может решить проблему. НО. если вы вдруг захотите ПРОДАТЬ свое творение то нарушите тем самым GPL
Если же придерживатся LGPL то надо линковать динамически

Пока что кроме dependency walker. листка бумаги и ручки (для выписывания всех нужных ДЛЛ-ок) ничего придумать не могу.
Помнится один из инсталяторов (правда платный) имел функции импорта в пакет всех библиотек от которых зависит приложение. Но это было лет 3 назад может теперь такой функцией обзавелись и бесплатные инсталяторы (NSIS, InnoSetup, etc.)
П.С. Еще одно замечание таким образом можно найти только библиотеки от которых непосредственно завитит проложение т.е. всякие плагины-драйвера БД не в счет там только методом перебора
Записан
Lee Harvey Oswald
Гость
« Ответ #6 : Март 04, 2010, 23:07 »

насчет лицензии я знаю, я ничего продавать не собираюсь, тупо не кто не купить мою байду, просто хотел у себя на компе поюзать свои программы, так ради прикола)) ну и научиться делать эту линковку, лишним не будет...
хм, я и не думал что эта бесплатная лицензия запрещает статическую линковку, зачем они вообще тогда оставили эту функцию?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #7 : Март 05, 2010, 07:28 »

170 метров это много, скорее всего, у тебя дебажная версия. Дллки *d.dll вид имеют?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Lee Harvey Oswald
Гость
« Ответ #8 : Март 06, 2010, 12:37 »

я сделал релис и кинул все либы какие он просил, не знаю, может как то по другому надо..
у меня только QtGuid4.dll  весит 143мб
Записан
BRE
Гость
« Ответ #9 : Март 06, 2010, 12:41 »

у меня только QtGuid4.dll  весит 143мб
Это debug версия, собери программу в release, она будет требовать библиотеки без d.
debug - QtGuid4.dll
release - QtGui4.dll
Записан
SASA
Гость
« Ответ #10 : Март 06, 2010, 14:08 »

http://doc.crossplatform.ru/qt/4.5.0/deployment.html
Всё по-русски и очень понятно.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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