Уменьшение размера исполняемого .exe-файла в lazarus-1.0.10
Модератор: Модераторы
Уменьшение размера исполняемого .exe-файла в lazarus-1.0.10
Установил lazarus-1.0.10-fpc-2.6.2-win32
В lazarus-1.0 утилитами strip.exe и upx.exe добивался многократного уменьшения размера файла созданого приложения (.exe-файла).
В lazarus-1.0.10 утилита strip.exe почему-то не работает, а утилиты upx.exe вообще нет (в версии lazarus-1.0 файлы strip.exe и upx.exe находились в папке C:\lazarus\fpc\2.6.0\bin\i386-win32\)
Почему в lazarus-1.0.10 не работают утилиты strip.exe и upx.exe для уменьшение размера исполняемого .exe-файла?
В lazarus-1.0 утилитами strip.exe и upx.exe добивался многократного уменьшения размера файла созданого приложения (.exe-файла).
В lazarus-1.0.10 утилита strip.exe почему-то не работает, а утилиты upx.exe вообще нет (в версии lazarus-1.0 файлы strip.exe и upx.exe находились в папке C:\lazarus\fpc\2.6.0\bin\i386-win32\)
Почему в lazarus-1.0.10 не работают утилиты strip.exe и upx.exe для уменьшение размера исполняемого .exe-файла?
по идее upx и strip в bin фпс лежат.
Плюс, по идее, лазарь уже могет сам "стриповать".
Плюс, по идее, лазарь уже могет сам "стриповать".
Спасибо за ответ.
Но
Да, файл strip.exe находся в папке C:\lazarus\fpc\2.6.2\bin\i386-win32.
После изменения некоторых параметров проекта (в том числе и "вырезать символы из исполнимого файла" и "Генерировать отладочную информацию для GDB") файл из 14,8 Мб уменьшается до 1,7 Мб. Но после использования вышеперечисленных утилит в lazarus-1.0 размер файла еще уменьшался (приблизительно до 700 Кб).
Сейчас никакими манипуляциямия не могу уменьшить. Не могу размер файла сделать меньше чем до 1,7 Мб
Strip.exe не срабатывает.
А из FPC убрали UPX.
Как уменьшть размер исполняемого .exe-файла в lazarus-1.0.10?
Почему не работает Strip.exe?
И что с upx.exe? Скачать отдельно и подкинуть в папку FPC? - результат - 0!
Уточните...
Но
amateur писал(а):по идее upx и strip в bin фпс лежат.
Да, файл strip.exe находся в папке C:\lazarus\fpc\2.6.2\bin\i386-win32.
После изменения некоторых параметров проекта (в том числе и "вырезать символы из исполнимого файла" и "Генерировать отладочную информацию для GDB") файл из 14,8 Мб уменьшается до 1,7 Мб. Но после использования вышеперечисленных утилит в lazarus-1.0 размер файла еще уменьшался (приблизительно до 700 Кб).
Сейчас никакими манипуляциямия не могу уменьшить. Не могу размер файла сделать меньше чем до 1,7 Мб
Strip.exe не срабатывает.
А из FPC убрали UPX.
Как уменьшть размер исполняемого .exe-файла в lazarus-1.0.10?
Почему не работает Strip.exe?
И что с upx.exe? Скачать отдельно и подкинуть в папку FPC? - результат - 0!
amateur писал(а):Плюс, по идее, лазарь уже могет сам "стриповать".
Уточните...
приблизительно до 700 Кб
такого размера бинарника не помню (больше метра - де факто). Хотя на винапи или кол размер конечно поменьше.
У меня на фпс 2.7.1 и лазарь 1.1 кажись 1,5 + ....
upx - сильно вредное зло
Добавлено спустя 3 минуты 51 секунду:
Re: Уменьшение размера исполняемого .exe-файла в lazarus-1.0.10
если не ошибаюсь то в опциях проекта -- "Вырезать символы из исполнимого файла"Уточните...
for-films писал(а):Почему не работает Strip.exe?
Видимо потому что при компиляции уже все было вырезано.
for-films писал(а):И что с upx.exe? Скачать отдельно и подкинуть в папку FPC? - результат - 0!
Так его еще и запускать надо ручками и с параметрами.
Параметры проекта / Компоновка / Использовать внешний файл отладочных символов GDB
Ну и забыть про strip.exe
Ну и забыть про strip.exe
Да и уменьшение файла менее 1.7 такая актуальная задача...
qivi писал(а):Да и уменьшение файла менее 1.7 такая актуальная задача...
Запросто:
Код: Выделить всё
del project.exeвсяко разно помогает.
qivi писал(а):Да и уменьшение файла менее 1.7 такая актуальная задача...
Как технический прогресс расслабляет программистов, можно писать большие и медленные программы, не работает у кого-то - сам виноват, меняй компьютер. Все уже забыли про большие компьютеры с маленькой памятью.
Когда-то уже выкладывал свою программку к вопросу о размере исполняемого файла.
Ну что за вопросы, извечный по отключай из uses модули не юзающиеся.
Как технический прогресс расслабляет программистов, можно писать большие и медленные программы, не работает у кого-то - сам виноват, меняй компьютер.
Вот только "большая" не значит медленная.
qivi писал(а):Вот только "большая" не значит медленная.
Видимо по вашему большая значит мощная.
for-films писал(а):И что с upx.exe? Скачать отдельно и подкинуть в папку FPC? - результат -
ну собственно "свежий" UPX можно найти тут http://upx.sourceforge.net/, ну а как юзать, это как захотите, можно отдельно, а можно указать в параметрах при сборке, например так: Проект -> Параметры проекта -> Параметры компилятора -> Команды компилятора - Команда "Выполнить после компиляции"
Ну и не забыть приложить к нему параметры (как писали выше)
Не проще ли в настройках компилятора выключить "Добавлять отладочною информацию"?
- Лекс Айрин
- долгожитель
- Сообщения: 5723
- Зарегистрирован: 19.02.2013 16:54:51
- Откуда: Волгоград
- Контактная информация:
trexxet, это не Тру. Слишком просто.
Хотя у меня получилось подойти к границе 1.7 --1.9 мегабайт и без привлечения дополнительных средств. Только настройками лазаруса и удалением лишних модулей. Ну еще и превращением кнопок в кликабельные картинки. Причем, перекомпиляция под каждую новую версию позволяет еще немного уменьшить размер программы.
ЗЫ, в отличии от UPX мой подход не замедляет программу, так как просто удаляет мертвый код.
Хотя у меня получилось подойти к границе 1.7 --1.9 мегабайт и без привлечения дополнительных средств. Только настройками лазаруса и удалением лишних модулей. Ну еще и превращением кнопок в кликабельные картинки. Причем, перекомпиляция под каждую новую версию позволяет еще немного уменьшить размер программы.
ЗЫ, в отличии от UPX мой подход не замедляет программу, так как просто удаляет мертвый код.
