Введение
Свободная кроссплатформенная интегрированная среда разработки для Free Pascal
Lazarus – это кроссплатформенная интегрированная среда разработки (IDE) для быстрой разработки приложений (RAD) с использованием компилятора Free Pascal. Её цель – предоставить простую в использовании среду разработки для работы с языком Object Pascal, максимально приближенную к Delphi. Это бесплатное программное обеспечение с открытым исходным кодом, различные части которого распространяются под разными лицензиями. Lazarus часто используется для создания нативных консольных и графических пользовательских интерфейсов (GUI) для настольных компьютеров, мобильных устройств, веб-приложений, веб-сервисов, визуальных компонентов и библиотек функций для различных операционных систем, включая macOS, Linux и Windows.
Распространение и лицензирование
Как и Free Pascal, Lazarus является свободным программным обеспечением. Различные его компоненты распространяются под разными лицензиями свободного программного обеспечения, включая GPL, LGPL, MPL и модифицированную версию LGPL. LCL, который статически встраивается в создаваемые исполняемые файлы, лицензируется по модифицированной версии LGPL, предоставляющей дополнительные разрешения для статической компоновки с разрабатываемым программным обеспечением, в том числе проприетарным. Установка пакета времени разработки эквивалентна подключению к IDE, поэтому распространение Lazarus IDE с пакетом времени разработки, несовместимым с GPL, например, пакетами JEDI, лицензированными под Mozilla Public License, предустановленными, приведёт к нарушению лицензии. Это не препятствует разработке проприетарных пакетов с использованием Lazarus.
История
Первая попытка разработки IDE для Free Pascal была предпринята в 1998 году в рамках проекта "Мегиддо". После провала проекта, некоторые из его разработчиков начали новый проект, основанный на более гибкой основе. Название "Лазарь" отсылает к возрождению концепции "Мегиддо". Оно вдохновлено Лазарем из Вифании, который, согласно Евангелию от Иоанна, был возвращен к жизни Иисусом через четыре дня после смерти. Первая предварительная версия LCL была готова к выпуску в 2001 году. В 2003 году первая бета-версия Lazarus (0.9.0.3) была размещена на SourceForge. Lazarus версии 1.0 был выпущен в 2012 году. Значительно улучшенная версия Lazarus 1.2 была выпущена в 2014 году. По состоянию на март 2014 года с SourceForge было произведено более четырех миллионов загрузок.
Версии
Номер версии Дата выпуска Платформа Комментарии
Январь 2001 Windows Первый выпуск библиотеки компонентов
Январь 2001 Windows Перепроектирование библиотеки компонентов для поддержки разработки для Linux и Windows с использованием GTK+ и других виджетов
30 января 2001 Windows, Linux Исправления ошибок и новые функции, поддерживающие кроссплатформенную разработку и шаблоны проектов
9 октября 2001 Windows, Linux Реализованы Codetools, исправления ошибок
17 января 2002 Windows, Linux Расширенные функции поиска
19 августа 2002 Windows, Linux Улучшенная графика и поддержка шрифтов, поддержка синтаксиса Delphi 6. Двоичные DFM теперь автоматически преобразуются в LFM
26 октября 2002 Windows, Linux LCL отсоединен от интерфейсов
4 сентября 2003 Linux Первый выпуск на SourceForge
27 февраля 2004 Windows, Linux Поддержка пакетов, многочисленные добавленные и улучшенные свойства
3 января 2005 Windows Улучшена поддержка потоков, старейшая публичная версия размещена на SourceForge
25 февраля 2005 Windows
19 июля 2005 Windows
3 октября 2005 Windows, Mac OS X (PPC) Исправления ошибок, улучшена расширяемость IDE, редактор документов для файлов FPDoc; включает Free Pascal 2.0.1
7 февраля 2006 Windows Новые пакеты для поддержки баз данных, CGI-приложений и печати
2 апреля 2006 Windows, Mac OS X (PPC), Linux Исправления ошибок, больше элементов управления в интерфейсах WinCE и Qt4
28 мая 2006 Windows, Mac OS X (PPC), Linux Исправления ошибок, онлайн-помощь для окон IDE и LCL-приложений, улучшения интерфейса Qt; включает Free Pascal 2.0.2
23 сентября 2006 Windows, Mac OS X (PPC), Linux Исправления ошибок, реализован список процедур, новый инструмент командной строки "lazbuild"
5 ноября 2006 Windows, Mac OS X (PPC), Linux Исправления ошибок, реализовано сворачивание кода, улучшен набор виджетов Qt
26 марта 2007 Windows, Mac OS X (PPC), Linux Новые компоненты для написания Windows-сервисов и Linux-демонов, поддержка пользовательских курсоров мыши; включает Free Pascal 2.0.4
15 ноября 2007 Windows, Mac OS X, Linux Первая стабильная версия для Win64, WinCE и Mac OS X на базе Intel. Улучшения в интерфейсах наборов виджетов Qt, Carbon и Gtk2. Настраиваемая панель инструментов; включает Free Pascal 2.2.0
5 октября 2008 Windows, Mac OS X, Linux Внутренняя графическая система была переписана. LCL теперь использует строки Unicode, закодированные как UTF-8 на всех платформах. Помощь FPDoc во всплывающих подсказках. Первая версия, работающая нативно с использованием набора виджетов Carbon на Mac OS X
13 марта 2009 Windows, Mac OS X, Linux Исправления ошибок, улучшена поддержка значков; включает Free Pascal 2.2.2
29 сентября 2009 Windows, Mac OS X, Linux Улучшения редактора и отладчика, включая поддержку шрифтов с двойным байтом, таких как восточные, японские, китайские и арабские, уменьшенные размеры файлов генерируемых приложений; включает Free Pascal 2.2.4
25 октября 2009 Windows, Mac OS X, Linux В основном исправления ошибок
22 марта 2011 Windows, Mac OS X, Linux Большое количество новых функций, включая стыковку и несколько окон исходного кода. Основан на Free Pascal 2.4.2
30 сентября 2011 Windows, Mac OS X, Linux Включает Free Pascal 2.4.4. Кандидат на выпуск Lazarus 0.9.30.2
26 октября 2011 Windows, Mac OS X, Linux Кандидат на выпуск Lazarus 0.9.30.2
5 ноября 2011 Windows, Mac OS X, Linux Исправления ошибок
3 марта 2012 Windows, Mac OS X, Linux Исправления ошибок, включает Free Pascal 2.6.0. Кандидат на выпуск Lazarus 0.9.30.4
7 марта 2012 Windows, Mac OS X, Linux Кандидат на выпуск Lazarus 0.9.30.4
11 марта 2012 Windows, Mac OS X, Linux Кандидат на выпуск Lazarus 0.9.30.4
14 марта 2012 Windows, Mac OS X, Linux Исправления ошибок
29 июля 2012 Windows, Mac OS X (Intel), Linux Кандидат на выпуск Lazarus 1.0
21 августа 2012 Windows, Mac OS X, Linux Кандидат на выпуск Lazarus 1.0
28 августа 2012 Windows, Mac OS X, Linux Первая финальная версия. Этот стабильный релиз включает Free Pascal 2.6.0. Многочисленные исправления и улучшения IDE, включая функцию макроса, расширенное сворачивание кода и новые функции отладчика
10 октября 2012 Windows, Mac OS X, Linux Исправления ошибок, незначительные дополнения к LCL и наборам виджетов
2 декабря 2012 Windows, Mac OS X, Linux Исправления ошибок, незначительные дополнения к IDE, LCL и наборам виджетов, а также LazReport и TAChart
3 февраля 2013 Windows, Mac OS X, Linux Исправления ошибок, незначительные дополнения к IDE, LCL и виджетам, а также LazReport и TAChart
19 марта 2013 Windows, Mac OS X, Linux Выпуск исправления ошибок; включает Free Pascal 2.6.2
12 июня 2013 Windows, Mac OS X, Linux Исправления ошибок
24 августа 2013 Windows, Mac OS X, Linux Исправления ошибок
16 ноября 2013 Windows, Mac OS X, Linux Исправления ошибок
16 сентября 2013 Windows, Mac OS X, Linux Альфа-версия для Lazarus 1.2
3 ноября 2013 Windows, Mac OS X, Linux Кандидат на выпуск Lazarus 1.2
13 января 2014 Windows, Mac OS X, Linux Кандидат на выпуск Lazarus 1.2
4 марта 2014 Windows, Mac OS X, Linux Многочисленные новые функции, включая рекордер макросов, поддержку слоистых графиков и Pascal Script. Основан на Free Pascal 2.6.2
23 апреля 2014 Windows, Mac OS X, BSD, Solaris, Linux Выпуск исправления ошибок. Основан на Free Pascal 2.6.4
16 июня 2014 Windows, Mac OS X, BSD, Solaris, Linux Выпуск исправления ошибок
12 октября 2014 Windows, Mac OS X, BSD, Solaris, Linux Выпуск исправления ошибок
19 апреля 2015 Windows, Mac OS X, BSD, Solaris, Linux Улучшения редактора, обработки ресурсов и дополнительные новые функции. Основан на Free Pascal 2.6.4
14 июля 2015 Windows, Mac OS X, BSD, Solaris, Linux Выпуск исправления ошибок
4 октября 2015 Windows, Mac OS X, BSD, Solaris, Linux Выпуск исправления ошибок
18 февраля 2016 Windows, Mac OS X, Linux Многочисленные новые функции, включая стыковку, группы проектов и улучшенный редактор. Основан на Free Pascal 3.0.0
13 ноября 2016 Windows, Mac OS X, Linux Выпуск исправления ошибок
26 февраля 2017 Windows, macOS, Linux Выпуск исправления ошибок. Основан на Free Pascal 3.0.2
6 декабря 2017 Windows, macOS, BSD, Linux Основной релиз со многими новыми функциями, включая онлайн-менеджер пакетов. Основан на Free Pascal 3.0.4
28 февраля 2018 Выпуск исправления ошибок
22 мая 2018 Windows, macOS, BSD, Linux Выпуск исправления ошибок
5 января 2019 Windows, macOS, BSD, Linux Многочисленные новые функции, включая поддержку Cocoa и внедрение транслятора Pascal в JavaScript
16 апреля 2019 Windows, macOS, BSD, Linux Выпуск исправления ошибок
6 августа 2019 Windows, macOS, BSD, Linux Выпуск исправления ошибок
1 ноября 2019 Windows, macOS, BSD, Linux Выпуск исправления ошибок
16 апреля 2020 Windows, macOS, BSD, Linux Выпуск исправления ошибок, улучшенный набор виджетов Cocoa
11 июля 2020 Windows, macOS, BSD, Linux Выпуск исправления ошибок, незначительные дополнения, первая версия на основе Free Pascal 3.2.0
21 февраля 2021 Windows, macOS, BSD, Linux Основан на Free Pascal 3.2.0. Список исправлений доступен
5 января 2022 Windows, macOS, BSD, Linux Основан на Free Pascal 3.2.2. Многочисленные улучшения, в том числе в IDE, LCL и наборах виджетов
19 мая 2022 Windows, macOS, BSD, Linux Выпуск исправления ошибок
28 сентября 2022 Windows, macOS, BSD, Linux Выпуск исправления ошибок
6 марта 2023 Windows, macOS, BSD, Linux Выпуск исправления ошибок
21 декабря 2023 Windows, macOS, BSD, Linux Многочисленные улучшения, в том числе в IDE, LCL, наборах виджетов и отладчике.
Примеры приложений, созданных с помощью Lazarus
ASuite - бесплатный запускатель приложений с открытым исходным кодом для Windows. Начиная с версии 2.1 Alpha 1, полностью написана на Lazarus/FPC. Beyond Compare - утилита для сравнения данных для Windows, macOS и Linux. Версии для macOS и Linux компилируются с использованием Lazarus/FPC. Cartes du Ciel - бесплатная программа-планетарий для Linux, macOS и Windows. Программа отображает и маркирует большинство созвездий, планет и объектов, видимых в телескоп. Она полностью написана на Lazarus/FPC и распространяется под лицензией GPL. C evo - это стратегическая игра с пошаговым ходом и открытым исходным кодом, портированная из Delphi в Lazarus. Cheat Engine - сканер памяти, шестнадцатеричный редактор и отладчик с открытым исходным кодом. Полезна для читов в компьютерных играх. Начиная с версии 6.0, компилируется с использованием Lazarus/FPC. EPANET - программный пакет для моделирования систем водоснабжения. HNSKY, Hallo Northern Sky - бесплатная программа-планетарий для Windows и Linux. Начиная с версии 3.4.0, написана и компилируется с помощью Lazarus/FPC. MyNotex - бесплатное программное обеспечение для Linux, предназначенное для создания и управления текстовыми заметками. PeaZip - архиватор с открытым исходным кодом, разработанный на Lazarus/FPC. TorChat переходит с Python и переписывается на Lazarus + Free Pascal. Total Commander 64-битная версия. Double Commander - кроссплатформенный файловый менеджер с открытым исходным кодом, имеющий две панели, расположенные рядом. Он вдохновлен Total Commander, а также содержит некоторые новые идеи. SimThyr - программа непрерывного моделирования гомеостаза щитовидной железы.
Примеры библиотек Дельфи, совместимых с Лазареем
GLScene – это бесплатная библиотека на основе OpenGL, предоставляющая визуальные компоненты и объекты для описания и отрисовки 3D-сцен. OpenWire – это библиотека с открытым исходным кодом, позволяющая свойствам, реализованным в виде контактов (пинов), устанавливать соединения между компонентами LCL, подобно тому, как это реализовано в LabVIEW или Agilent VEE.