Уроки, алгоритмы, программы, примеры

Материалы по разделам

Построения
на плоскости (2D)
Графика
в пространстве (3D)
Вычислительная
геометрия
Физическое
моделирование
Фрактальная
графика

Новые комментарии

У меня проблема вот с этим: gl.Clear(OpenGL.GL_COLOR_BUFFER_BIT | OpenGL.GL_DEPTH_BUFFER_BIT);. Вылезает ошибка: CS1061 "object" не содержит определения "GL_COLOR_BUFFER_BIT", и не удалось найти доступный метод расширения "GL_COLOR_BUFFER_BIT",...
Большое спасибо. Единственный код который прошел без каких либо ошибок. Ура!!!
Скажите пожалуйста, подскажите алгоритм по которому по заданным точкам можно определить тип многогранника, скажем это куб или прямоугольный параллелепипед. Нашел теорию по этим фигурам: https://www.mat... https://www.mat... Акцентировать внимание...
Всем у кого не работает. файл wizard.script Ещё одно упоминание Glut32 в строке "if (!VerifyLibFile(dir_nomacro_lib, _T("glut32"), _T("GLUT's"))) return false;" меняем на "if (!VerifyLibFile(dir_nomacro_lib, _T("freeglut"), _T("GLUT's"))) return...
Не получается, емаё

Счетчики и рейтинг

Рейтинг@Mail.ru Яндекс.Метрика

Cоздаваемые в Lazarus исполняемые файлы имеют довольно большой размер. Причин несколько. Во-первых, в exe-файле сохраняется вся отладочная информация. Во вторых - создаваемый exe-файл оптимизирован под скорость выполнения, а не под размер.

Чтобы уменьшить размер исполняемого файла необходимо в свойствах проекта (Проект - Параметры проекта) включить 4 ключа компиляции:

1) Вкладка Генерация кода: установить флажок "Умная компоновка" (-СХ);
2) Вкладка Компоновка: установить флажок "Умная компоновка" (-ХХ);
3) Вкладка Компоновка: установить флажок "Использовать внешний файл отладочных символов GDB"(-Xg);
4) Вкладка Компоновка: установить флажок "Вырезать символы из исполняемого файла"(-Xs).

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

Эта настройка позволяет сократить размер исполняемого файла в несколько раз. (Пустой проект с 12 МБ сокращается до 1 МБ).

Однако, можно еще сократить размер, если воспользоваться утилитами strip.exe и upx.exe. Первая вырезает из файла отладочную информацию, вторая сжимает запускаемый файл. Удобно создать bat-файл

compress.bat

strip.exe --strip-all %1
upx.exe --best %1

и запускать сжатие одной командой:

compress.bat project1.exe

Утилиты прикреплены ниже.

Прикрепленный файлРазмер
Утилиты компрессии exe-файла Lazarus401.35 кб

Комментарии

ujif аватар
Опубликовано ujif в 9. Март 2014 - 15:02.

Здравствуйте,создал проект написал программу на лазарус,потом выставил и убрал все галочки для удаления отладочной инфы, сохранил и собрал проект ..но размер файла как был мегабайтный так ничего и не изменилось..
что я делаю не так?
и второй вопрос: скачал я утилиты компрессии exe-файла лазарус и как ими пользоваться?
если есть возможность объясните мне эти два вопроса по шагам
с Уважением Юрий

admin аватар
Опубликовано admin в 10. Март 2014 - 11:25.

Исполняемый файл, скомплированный в Lazarus, размером 1 мб - это уже хороший результат. Большего средствами Lazarus врядли можно добиться. Утилита же upx.exe позволяет сжать любой не сжатый exe-файл. Чтоб посмотреть настройки запустите ее с ключом upx.exe /?

TRAUMA аватар
Опубликовано TRAUMA в 1. Сентябрь 2015 - 6:48.

Спасибо Вам огромное! Очень полезный совет для начинающих, а то проблема с размером exe уже начала отпугивать от Lazarus.