Lazarus. Уменьшение размера исполняемого файла

При компиляции проектов Lazarus размер исполняемого файла может привышать "разумные" размеры. Так, например, размер приложения, состоящего из одной формы, с настройками компиляции "по умолчанию", составляет 20,7 Мб и 13,9 Мб для Linux и Windows систем соответственно.

Для того что бы уменьшить размер исполняемого файла необходимо настроить параметры компиляции. Для этого в IDE Lazarus выбираем "Project -> Project Options..." ("Проект -> Параметры проекта...") и устанавливаем флажки на вкладках:

1. "Code Generation" (Генерация кода)
- "Smart linkable (-СХ)" - Умная компоновка

Lazarus. Вкладка "Code Generation" (Генерация кода)


2. "Linking" (Компоновка)
- Use external gdb debug symbol file (-Xg) - Использовать внешний файл отладочных символов GDB
- Strip symbol from executable (-Xs) - Вырезать символы из исполняемого файла
- Link smart (-ХХ) - Умная компоновка

Lazarus. Вкладка "Linking" (Компоновка)


Таким образом получается сократить размер исполняемого файла до 3,3 Мб (Linux) и 1,7 Мб (Windows).

Использовав утилиту upx (сжимает исполнительный файл, официальная страница) можно уменьшить размер дополнительно - до 1,0 Мб (Linux) и 0,6 Мб (Windows).

Для Linux мне пришлось установить пакет "upx-ucl" через Synaptic. Для Windows необходимо скачать вот этот архив.

Пример использования утилит для Linux:

upx --best путь_к_исполнительному_файлу


и Windows:

upx.exe --best путь_к_исполнительному_файлу