После обыска и работы в течение нескольких часов, я не мог получить, как статически связывать библиотеки с моим exe. Итак, я попытался скопировать зависимости в папку exe. Я сделал тестовую программу, которая изменила метку одним нажатием кнопки. Это было 14 мб. Что мне делать? Я использую icudt51.dll icuin51.dll icuuc51.dll libgcc_s_dw2-1.dll libstdC++ - 6.dll libwinpthread-1.dll Qt5Core.dll Qt5Gui.dll Qt5WidgetsQt-файлы слишком большие.
ответ
только вещь, которую я вижу возможной, - использовать upx для сжатия вашего исполняемого файла. Вы даже не заметите разницы. Он быстро распаковывает и выполняет вашу программу.
Есть много решений вашей проблемы:
1- Использование Qt 4.8.5, существует не так много различий между Qt 5 и Qt 4.8. Это поможет вам, потому что Qt 4.8.5 не компилируется с поддержкой по умолчанию для QtWebkits, что означает отсутствие зависимости от icudt51.dll icuin51.dll icuuc51.dll файлов.
2 Если вы хотите использовать Qt 5, вам нужно будет перекомпилировать его с отключенным веб-кадром, что также избавит вас от вышеуказанных зависимостей. Для получения дополнительной информации проверить это: post
Если вы хотите связать Qt 5.1.1 статический как есть (без 3-пластырей партии), она работает только для в истоке строит. Статические сборки Shadow терпят неудачу из-за ошибки в клонировании zlib. Ускоренный простой исполняемый файл, который использует только виджеты, будет меньше 5 МБ, больше как 3 МБ. Он находится в одном и том же шаре для Qt 5 и Qt 4. Я собираю статически, используя MSVC2012, и он работает отлично. Это полные статические сборки, что означает, что библиотека Qt статична, а среда выполнения C/C++ также статична. Единственные зависимости находятся в системных DLL. Делает жизнь легкой для всех, хотя сборка релизов может занять несколько минут и забудьте о строительстве на 32-битной системе.
Время запуска статически построенных исполняемых файлов удивительно. Это почти мгновенно :)
- 1. GridView делегаты слишком большие
- 2. Слишком большие объекты данных
- 3. Изображения продукта слишком большие
- 4. Ouya - размеры слишком большие
- 5. Текстовые поля WPF слишком большие
- 6. Android дизайн. Слишком большие изображения
- 7. серверные журналы журнала слишком большие
- 8. Номера слишком большие для переменных
- 9. javascript файлы слишком большие? - mvc
- 10. Выпадающие предметы HoloEverywhere слишком большие
- 11. Значки карты Google слишком большие
- 12. R - ggplot2 - boxplots слишком большие
- 13. Материал Дизайн иконки слишком большие
- 14. Слишком большие шрифты в Outlook
- 15. Удалите недопустимые числа (слишком большие, слишком маленькие) из массива
- 16. Почему мои пункты меню слишком маленькие или слишком большие?
- 17. Данные слишком большие или слишком маленькие texture2d.SetData <Color>
- 18. Eclipse Juno OSx Вкладки слишком большие
- 19. Слишком большие файлы при загрузке Piktogramms
- 20. Рекламные данные слишком большие Eddystone Beacon
- 21. Android Eddystone широковещательные данные слишком большие
- 22. Пакетные файлы слишком большие, чтобы читать
- 23. Невозможно получить слишком большие данные MySQL
- 24. JVMJ9GC020E -Xms слишком большие для кучи
- 25. Elasticsearch/Kibana данные поля слишком большие
- 26. Openlayers WKT возвращает слишком большие координаты gps
- 27. Telerik Report Кнопки слишком большие в браузере
- 28. Xcode Instruments Allocations Общие байты слишком большие
- 29. ГНС запуска программы аргументы конфигурации слишком большие
- 30. Sql Server Deadlock Идентификаторы объектов слишком большие
Вы не можете связать статически с .dll, вы имеете в виду, что вы связали динамически в конце? – brunocodutra
Имейте в виду, что для связывания статически с библиотеками Qt ваш код должен быть лицензирован как GPL, так и LGPL, или вам необходимо заплатить коммерческую лицензию Qt. Если ваш код не соответствует одному из этих условий, вам не разрешается связывать статически с Qt. – syam
Да, файлы Qt большие! – mox