Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: strilya от Сентябрь 30, 2015, 23:59



Название: Сбор всех Qt`шных либ в одну
Отправлено: strilya от Сентябрь 30, 2015, 23:59
Доброго времени суток.
Появилась задача следующего эстетического характера: Располагать в корне бинарника все qtшные библиотеки не хочется, но кроме qtшных есть еще достаточно остальных. Полную статическую сборку не предлагать - приложение должно обновляться, и обновлять несколько библиотек проще и легче, чем один здоровый бинарник.
Собственно, вопрос следующий:
Как собрать все qtшные библиотеки в одну?

Самому приходят следующие идеи, которые порождают новые вопросы:
1. Очень профильная пересборка qt с редактированием тучи всего, а все ради того, чтобы посливать в один исходники всех используемых мною библиотек (без серьезных танцев с бубном, редактированием всяких makefile`ов и пр, думаю, не обойтись)
2. Использовать специальный софт, который, думаю, все-же имеется.
В обоих случаях возникает резонный вопрос: Не будет ли проблем с таблицами экспорта ф-ций и прочего.

В общем, прошу все эти аспекты разъяснить, или дать хороший гайдик. Читать и изучать всегда был только рад.


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: Racheengel от Октябрь 01, 2015, 01:50
А что, обновлять одну огромную либу проще, чем одну экзешку?


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: qate от Октябрь 01, 2015, 08:39
А что, обновлять одну огромную либу проще, чем одну экзешку?

как я понял он хочет обновлять только исполняемый файл, а либы в одну запихнуть для эстетства



Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: Igors от Октябрь 01, 2015, 09:10
Платформа? Напр у людей на OSX приложение без проблем делается одним файлом (точнее бандлом)

На Вындоуз "в одну" вряд ли удастся т.к. должен быть фолдер plugins. Мудрить что-то со сборками совсем мрачно, более реалистично слить все либы в отдельный фолдер чтобы они не болтались (неопрятно) рядом с exe-шником. Но и такая эстетика потребует усилий. В общем, с этим все резво начинают но мало кто достигает финиша.



Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: Racheengel от Октябрь 01, 2015, 09:22
Ну, либы и экзешку можно положить в bin/libs, например, а в bin засунуть батник или прогу-стартер, которая будет дергать реальный exe. Но, имхо, овчинка выделки не стоит...


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: strilya от Октябрь 01, 2015, 10:24
А что, обновлять одну огромную либу проще, чем одну экзешку?
Проще эту одну qtшную либу оставить где-то в папке проекта, а обновлять exeшник и другие библиотеки. Самописные и не очень.
Платформа? Напр у людей на OSX приложение без проблем делается одним файлом (точнее бандлом)
На Вындоуз "в одну" вряд ли удастся т.к. должен быть фолдер plugins. Мудрить что-то со сборками совсем мрачно, более реалистично слить все либы в отдельный фолдер чтобы они не болтались (неопрятно) рядом с exe-шником. Но и такая эстетика потребует усилий. В общем, с этим все резво начинают но мало кто достигает финиша.
Платформа: Сначала форточки, потом и под макось. Эстетика требует усилий - окей, я это понимаю. Есть какая-либо литература по этому вопросу со всеми нюансами?


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: Alex Custov от Октябрь 01, 2015, 11:27
Есть какая-либо литература по этому вопросу со всеми нюансами?

Для такого - сильно сомневаюсь. Переделывайте систему сборки Qt, чтобы она генерировала один большой DLL вместо кучи маленьких, и необходимые плагины типа qindows.dll вкомпилировала в эту большую DLL статически вместо динамики. Потом линкуйтесь с этим большим DLL. Делов-то на месяц-полтора.


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: Igors от Октябрь 01, 2015, 12:34
Платформа: Сначала форточки, потом и под макось.
На OSX все решено на уровне OC, bundle может хранить все что угодно. Что такое "форточки" - не знаю


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: strilya от Октябрь 01, 2015, 21:27
Делов-то на месяц-полтора.
Оптимистично.
На OSX все решено на уровне OC, bundle может хранить все что угодно. Что такое "форточки" - не знаю
Будь по вашему. Windows.


Название: Re: Сбор всех Qt`шных либ в одну
Отправлено: Igors от Октябрь 02, 2015, 06:26
Делов-то на месяц-полтора.
Оптимистично.
Может даже слишком

Будь по вашему. Windows.
Тогда я уже все сказал выше.