Несмотря на то, что в Delphi с версии 10.2 есть компилятор для Linux, в качестве основного компилятора под Linux для mORMot был выбран FreePascal. Главная причина в том, что он открытый и бесплатный. И при этом FreePascal в части генерации кода лучше компилятора Delphi для Linux.
Основные минусы компилятора Delphi для Linux:
- доступен только в редакции Enterprise, что очень дорого;
- ARC (Automatic Reference Counting), что требует существенной доработки исходного кода.
Кроме того, использование открытого и бесплатного компилятора позволяет ограничится поддержкой только одной (последней) версии компилятора.
Итак, после многих лет, сообщество mORMot пришло к полностью открытой модели разработки: необходимые платформы и инструменты доступны в Open Source. Наличие Delphi все еще очень удобно для многих применений, но не обязательно.
Single Sign-On
Не могу не поделиться своим небольшим вкладом в улучшение поддержки Linux. Очень давно, в 2012 году, для mORMot я написал код прозрачной аутентификации пользователя (Single Sign-On) в домене Active Directory с помощью Windows SSPI. Поэтому и сейчас добавил реализацию этой функциональности под Linux для сервера и клиента (а также браузера в качестве клиента).
В Linux для аутентификации в домене Active Directory используется Kerberos и интерфейс GSSAPI. mORMot поддерживает реализации Kerberos как MIT, так и Heimdal.
Машина с Linux должна быть включена в домен. В качестве руководства рекомендую статью Configure SQL Server on Linux to Use Windows Authentication.
Знакомство
Для знакомства с новыми возможностями mORMot вам потребуется FPC версии 3.1 (на данный момент development release). В старых версиях FPC 3.0 и 2.6 нет достаточной поддержки RTTI.
Начать проще всего с fpcupdeluxe. Скачайте последний релиз для вашей платформы и запустите его. В Windows все должно заработать сразу, в Ubuntu 18.04 пришлось сначала установить необходимые пакеты:
sudo apt-get install build-essential mingw32-binutils libgtk2.0-dev subversion gitЗапустив fpcupdeluxe вы можете выбрать версии компилятора и среды разработки, приложение скачает и соберет все необходимое из svn/git.
Для установки подходящих FreePascal и Lazarus в ряду нижних кнопок нажмите «Trunk» или «NewPascal» (рекомендую NewPascal).
Там же нужно нажать «mORMot» для получения последней версии с GitHub.
После завершения сборки на рабочем столе должен появиться ярлык «Lazarus_fpcupdeluxe». Уже можно запустить Lazarus. В меню выбрать «File → Open...», перейти в папку
~fpcupdeluxe/ccr/mORMot/SQLite3/Samples
,
выбрать из примеров подходящий проект, открыть и запустить его.
Также рекомендую настроить современный вид IDE по инструкции Lazarus Docked Desktops.
Немного из личного опыта (Ubuntu 18.04 и Lazarus 1.9.0). Работает стабильно, в общем и целом не сильно хуже Delphi XE5, а 64-х битный отладчик даже лучше.
Поначалу непривычен синтаксис ассемблера, но разобраться можно.
Комментариев нет:
Отправить комментарий