Russian Qt Forum
Ноябрь 23, 2024, 13:40
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Уроки и статьи
(Модератор:
xintrea
) >
Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
Страниц:
1
...
5
6
[
7
]
8
9
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx (Прочитано 127867 раз)
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #90 :
Декабрь 19, 2014, 12:02 »
Цитата: __Heaven__ от Декабрь 19, 2014, 11:23
А при перезапуске системы кешируются?
Я имею в виду pagefile
Нет, часто заметно что "первый запуск" значительно дольше
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р
«
Ответ #91 :
Декабрь 19, 2014, 12:05 »
Можно самому замутить кеширование - поргу, которая юзает либы добавить в автозапуск. В итоге, после загрузки винды либы будут уже подгружены.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #92 :
Декабрь 19, 2014, 12:21 »
Цитата: Alex Custov от Декабрь 19, 2014, 10:30
Так он профессионально разработкой калькуляторов занимается?
На чём именно он пишет? Просто интересно. Подозреваю очередного адепта Делфи, пишущего для Windows-only.
Про калькулятор написала одна особа, которая занимается изучением OpenGL и шейдеров. Страшно ненавидит Qt и бесится, если кто-то упоминает о нём. Пишет на WinAPI (на линуксе, вроде, она тоже на чём-то пишет). Вот случайно её пример сохранился:
Записан
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #93 :
Декабрь 19, 2014, 12:22 »
Цитата: __Heaven__ от Декабрь 19, 2014, 10:44
Цитата: 8Observer8 от Декабрь 19, 2014, 10:23
Цитата: __Heaven__ от Декабрь 19, 2014, 09:40
Цитата: 8Observer8 от Январь 22, 2014, 16:09
- удаляем Qt 5.4 через панел задач
- удаляем папку C:\Qt\Qt5.4.0
- ставим заново Qt
Вам не кажется, что это как-то по хардкору
Пока другого варианта не нашёл. А этот вполне рабочий
Что вы этим действием хотите сделать?
Убрать "грязь" после сборки
Цитата: Пантер от Декабрь 19, 2014, 10:35
Вы, блин, сравните еще с прогой на Шарпе. Мизер весит. Вот только никто не учитывает, что надо сначала 200-300 метров .Net поставить.
Меня заставили сравнить с Visual Basic (я по ошибке туда попал). Пролистайте до моего сообщения:
http://www.cyberforum.ru/visual-basic/thread1294084.html
Аргумент в пользу статики: на киберфоруме ограничение на прикрепляемый файл 10 MБайт. Такой может быть мой ответ в какой-нибудь теме: вот мой вариант этой игрушки. Оцените. Либо: мой вариант приложения (были нередко случаи, когда человеку нужно небольшое приложение и он пишет в личку за доработкой). Человек быстренько скачал. Без всяких вопросов запустил и попробовал. Если дать ссылку на архив 20 МБайт (Yandex.Disk или Google.Drive), а при разархивировании он будет 50 МБайт, то это вызывает шок: "как это так? такое маленькое приложение, а столько весит?!" На мой взгляд лучше дублировать, то есть один архив загружать на сам форум, а другой хранить на Yandex.Disk или Google.Drive и давать ссылку. Польза в том, что моё приложение не пропадёт, если я изменю ссылку на дисках яндекс и гугл
Но на этих дисках размер ограничен. Это можно обойти. Для того, чтобы не дублировать файлы я могу хранить общие dll в отдельном архиве. И это, кстати, будет намного экономнее, чем статическая сборка, получается
Пользователю нужно будет кинуть две ссылки на общие dll и на архив с exe (вместе с дополнительными dll). Правда, приходится объяснять, что для запуска нужно exe кинуть к dll (или наоборот). Частенько это вызывает проблемы. Это довольно нестандартное решение для маленького оконного приложения. И когда человек наконец-то понял, что dll должны лежать именно рядом с exe (а не в папочке dlls, как он скачал). Должна быть маленькая инструкция (для примеров и небольших приложений - установку я исключаю). И вот он видит, что это маленькое оконное приложение состоит из кучи библиотек и занимает почти 50 МБайт - обычно это вызывает небольшой шок. Поэтому для маленьких приложений я делаю статическую сборку
Записан
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #94 :
Декабрь 19, 2014, 12:38 »
Цитата: 8Observer8 от Декабрь 19, 2014, 12:22
Убрать "грязь" после сборки
А где эта грязь происходит конкретно? В каких папках?
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #95 :
Декабрь 19, 2014, 12:39 »
Цитата: 8Observer8 от Декабрь 19, 2014, 12:21
Цитата: Alex Custov от Декабрь 19, 2014, 10:30
Так он профессионально разработкой калькуляторов занимается?
На чём именно он пишет? Просто интересно. Подозреваю очередного адепта Делфи, пишущего для Windows-only.
Про калькулятор написала одна особа, которая занимается изучением OpenGL и шейдеров. Страшно ненавидит Qt и бесится, если кто-то упоминает о нём. Пишет на WinAPI (на линуксе, вроде, она тоже на чём-то пишет). Вот случайно её пример сохранился:
Ненавижу такие простыни. Буэээ.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р
«
Ответ #96 :
Декабрь 19, 2014, 12:42 »
8Observer8, да сделай ты просто инсталлятор в том же Inno Setup для Кьютовых либ, который будет их куда-нибудь инсталлить и в PATH прописывать. Тогда вообще ничего пользователю делать не надо будет.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #97 :
Декабрь 19, 2014, 12:50 »
Цитировать
да сделай ты просто инсталлятор в том же Inno Setup для Кьютовых либ, который будет их куда-нибудь инсталлить и в PATH прописывать. Тогда вообще ничего пользователю делать не надо будет
Не знаю как организавать это. С одной стороны, если пользователь поставил, то для обновления я могу ему exe кидать. Но с другой, как я буду хранить эти приложения на дисках для раздачи?
Цитата: __Heaven__ от Декабрь 19, 2014, 12:38
Цитата: 8Observer8 от Декабрь 19, 2014, 12:22
Убрать "грязь" после сборки
А где эта грязь происходит конкретно? В каких папках?
Я понял, к чему вы клоните. Грязь, скорее всего, в папке с исходниками. Будем считать, что переустановка Qt - это восстановление исходников и config-файла. У меня ещё приложение одно перестало запускаться, как оказалось это не потому что было что-то испорчено. Да, согласен, что переустанавливать Qt - это слишком, но мне так проще было. Надо подумать, как лучше
Я там про ошибки ещё писал, которые проигнорировал. И текст их привёл. Кто-нибудь может пояснить, что это такое и как от них избавиться?
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #98 :
Декабрь 19, 2014, 12:56 »
Цитата: 8Observer8 от Декабрь 19, 2014, 12:21
Про калькулятор написала одна особа, которая занимается изучением OpenGL и шейдеров. Страшно ненавидит Qt и бесится, если кто-то упоминает о нём. Пишет на WinAPI (на линуксе, вроде, она тоже на чём-то пишет). Вот случайно её пример сохранился:
Очень даже симпатично, а для девчонки вообще прекрасно. Не гадит эксепшнами, не сует std куда ни попадя, в общем - делом занимается, а не халтурит как некоторые
Записан
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. размера с помощью upx
«
Ответ #99 :
Декабрь 19, 2014, 13:10 »
Цитата: Пантер от Декабрь 19, 2014, 12:39
Цитата: 8Observer8 от Декабрь 19, 2014, 12:21
Про калькулятор написала одна особа, которая занимается изучением OpenGL и шейдеров. Страшно ненавидит Qt и бесится, если кто-то упоминает о нём. Пишет на WinAPI (на линуксе, вроде, она тоже на чём-то пишет). Вот случайно её пример сохранился:
Ненавижу такие простыни. Буэээ.
По поводу ненависти к Qt той особы (и не только её). Про мнения о сочетании Qt обёрток и OpenGL почитайте мою тему:
http://www.gamedev.ru/code/forum/?id=195948
P.S. Мне хочется, чтобы мы не тратили время на доказательства, что Qt не дерьмо. Лучше делом доказывать в виде продуктов своего труда
Записан
__Heaven__
Джедай : наставник для всех
Offline
Сообщений: 2130
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р
«
Ответ #100 :
Декабрь 19, 2014, 13:52 »
Цитата: 8Observer8 от Декабрь 19, 2014, 12:50
Я понял, к чему вы клоните. Грязь, скорее всего, в папке с исходниками. Будем считать, что переустановка Qt - это восстановление исходников и config-файла. У меня ещё приложение одно перестало запускаться, как оказалось это не потому что было что-то испорчено. Да, согласен, что переустанавливать Qt - это слишком, но мне так проще было. Надо подумать, как лучше
Ну да. Я сделал резерв qmake.conf и папки src.
К слову, src копируется долго из-за мелких файлов, поэтому как только винда построила карту копирования и приступила к непосредственному копированию я запустил configure, чтобы время не терять.
После установки можно затереть свои изменения и вернуть всё как было.
А ещё проще после установки сделать mingw32-make clean...
Цитата: 8Observer8 от Декабрь 19, 2014, 12:50
Я там про ошибки ещё писал, которые проигнорировал. И текст их привёл. Кто-нибудь может пояснить, что это такое и как от них избавиться?
Вы так написали, как будто это нормально, что он сыпет ошибки
Записан
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р&#
«
Ответ #101 :
Декабрь 19, 2014, 14:36 »
Цитата: __Heaven__ от Декабрь 19, 2014, 13:52
Ну да. Я сделал резерв qmake.conf и папки src.
Спасибо! Исправил
Вначале инструкции добавил:
- переходим в каталог "C:\Qt\Qt5.4.0\5.4\mingw491_32\mkspecs\win32-g++" и создаём резервную копию файла "qmake.conf". Например, с именем "qmake.conf Copy"
- создаём резервную копию исходников Qt, то есть каталога: C:\Qt\Qt5.4.0\5.4\Src\
Заменил эти строчки инструкции
- удаляем Qt 5.4 через панел задач
- удаляем папку C:\Qt\Qt5.4.0
- ставим заново Qt
На эти:
- удаляем файл C:\Qt\Qt5.4.0\5.4\mingw491_32\mkspecs\win32-g++\qmake.conf и восстанавливаем резервный "qmake.conf"
- удаляем каталог C:\Qt\Qt5.4.0\5.4\Src и восстанавливаем резервный
Записан
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р&#
«
Ответ #102 :
Декабрь 19, 2014, 14:40 »
Цитата: __Heaven__ от Декабрь 19, 2014, 13:52
Цитата: 8Observer8 от Декабрь 19, 2014, 12:50
Я там про ошибки ещё писал, которые проигнорировал. И текст их привёл. Кто-нибудь может пояснить, что это такое и как от них избавиться?
Вы так написали, как будто это нормально, что он сыпет ошибки
Что с ошибками будем делать? Я предложил игнорировать, но это только на руку ненавистника Qt. Да, а больше всего хочется, чтобы красиво собралось. Или хотя бы точно знать, что эти ошибки не влияют ни на что (я почти на 100% уверен, что не влияют) Кто не видел ошибки, то посмотрите в первом сообщении с инструкцией. Ошибки выбрасываются в самом конце сборки
«
Последнее редактирование: Декабрь 19, 2014, 14:44 от 8Observer8
»
Записан
8Observer8
Гость
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р&#
«
Ответ #103 :
Декабрь 19, 2014, 15:25 »
Цитата: Пантер от Декабрь 19, 2014, 12:42
8Observer8, да сделай ты просто инсталлятор в том же Inno Setup для Кьютовых либ, который будет их куда-нибудь инсталлить и в PATH прописывать. Тогда вообще ничего пользователю делать не надо будет.
То есть у меня отдельно будет инсталятор для общих либ, а новый пользователь может один раз поставить эти либы и потом скачивать мои приложения в виде лёгкого exe (ну и возможно парочки либ). Я правильно понял идею?
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Статическая сборка Qt 5.4 для Win 7. Сжатие exe до мин. р
«
Ответ #104 :
Декабрь 19, 2014, 15:26 »
Цитата: 8Observer8 от Декабрь 19, 2014, 15:25
Цитата: Пантер от Декабрь 19, 2014, 12:42
8Observer8, да сделай ты просто инсталлятор в том же Inno Setup для Кьютовых либ, который будет их куда-нибудь инсталлить и в PATH прописывать. Тогда вообще ничего пользователю делать не надо будет.
То есть у меня отдельно будет инсталятор для общих либ, а новый пользователь может один раз поставить эти либы и потом скачивать мои приложения в виде лёгкого exe (ну и возможно парочки либ). Я правильно понял идею?
Совершенно верно.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Страниц:
1
...
5
6
[
7
]
8
9
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...