Наверно одно из первых что бросается в глаза при разработке ПО на Lazarus, это размер файла exe. Дело в том что вся отладочная информации по умолчанию, хранится в нашем исполняемом файле.
Удалять ее оттуда я советую вам только после того как вы полностью отладили свою программу.
Создав приложение с 2-мя кнопками, на выходе получаем следующий вес: 14,7 МБ Много не правда ли?
Итак мы создали с вами приложение, протестировали его, теперь пришло время его немного оптимизировать. Для этого нужно зайти в Параметры проекта
Компиляция и компоновка -> Отметить следующие пункты:
Отладка, Отключить отладочную информацию и включить Вырезать символы из исполняемого файла
Теперь заново компилируем файл, и получаем размер: 1,74 МБ Выглядит уже лучше, неправда ли? Но это еще не все, убрав стандартный значек: 1,61 МБ
Так же можно воспользоваться бесплатным компоновщиком файлов UPX: the Ultimate Packer for eXecutables
Скачиваем его, распаковываем в удобное для нас место. Закидываем туда наш файл программы и перетаскиваем ее на upx.exe
На выходе получаем: 522 КБ. Если бы запускали компоновку через командную строку с параметром —best получили бы еще меньше.
И так с 14,7 МБ мы уменьшили размер файла до 522 КБ, это примерно в 28 раз…
Для удобства в Lazarus можно добавить данный пункт меню.
Заходим в Сервис -> Настроить внешние средства Жмем Добавить
И вводим как на скриншоте:
Все теперь в меню Сервис, появилась наша строка: Размер Файла
При нажатии на которую, мы запускам компоновку нашего EXE файла.
Profit!
Cоздаваемые в Lazarus исполняемые файлы имеют довольно большой размер. Причин несколько. Во-первых, в exe-файле сохраняется вся отладочная информация. Во вторых — создаваемый exe-файл оптимизирован под скорость выполнения, а не под размер.
Теперь некоторые недоантивирусы пишут про программу запакованную upx, что это возможно вирус. Пока перестал пользоваться upx.