Разработчики программного обеспечения давно задумывались о том «Как можно было бы запускать Linux-приложения непосредственно в Windows, без необходимости использования отдельной виртуальной машины».
Технология WSL может дать ответ на этот вопрос. История WSL началась в 2016 году. На тот момент был реализован запуск бинарных исполняемых файлов Linux используя системные вызовы в ядре Windows. Также в первой версии была эмуляция ядра Linux через прослойку для трансляции системных вызовов.
Вторая версия WSL выпущена в 2019 году. В ней реализована полная совместимость с системными вызовами, полнофункциональное ядро Linux, поддержка GPU и Linux-приложений с графическим интерфейсом пользователя.
В этой статье попробуем вместе разобраться, как настроить WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux.
Запускаем командную строку Windows от имени администратора. Для вывода списка всех доступных дистрибутивов Linux вам необходимо в командной строке Windows ввести команду и нажать клавишу Enter:
wsl --list --online или wsl -l -o
Для установки Ubuntu 24.04 выполняем следующую команду:
wsl --install -d Ubuntu-24.04
После установки дистрибутива будет предложено создать учетную запись пользователя и пароль.
Для инсталляции Ubuntu 24.04 необходимо выполнить всего лишь несколько команд.
Терминал Ubuntu 24.04 доступен из меню «Пуск» Windows после установки дистрибутива. Запустить ядро Linux и войти в терминал Ubuntu 24.04 можно также командой из командной строки Windows:
wsl -d Ubuntu-24.04
После установки Ubuntu 24.04 необходимо выполнить обновление пакетов. Для обновления установленных пакетов выполним следующие команды в терминале Ubuntu 24.04:
$ sudo apt update && sudo apt upgrade && sudo apt dist-upgrade
Вводим пароль пользователя и нажимаем клавишу Enter. Дождемся запроса на согласие обновления пакетов. Вводим Y и подтверждаем нажатием Enter.
Для установки русской локализации выполняем следующие команды в терминале Ubuntu 24.04:
$ sudo apt-get install language-pack-ru && sudo apt-get install language-pack-gnome-ru
Для обновления локали нужно выполнить команду:
$ sudo update-locale LANG=ru_RU.UTF-8
Для установки Nautilus выполняем эту команду в терминале, а затем вводим следующую команду для непосредственного запуска Nautilus.
$ sudo apt install nautilus -y
$ nautilus
После установки файловый менеджер Nautilus доступен из меню «Пуск» Windows.
Подсистема WSL 2 позволяет использовать любой дистрибутив Linux, импортируя его из tar-файла. Запустим командную строку Windows от имени администратора. Выполним команду, чтобы скачать rootfs-образ ALT Linux в корень диска C\:
curl -o C:\alt-p11-rootfs-systemd-x86_64.tar.xz https://ftp.altlinux.org/pub/distributions/ALTLinux/p11/images/cloud/x86_64/alt-p11-rootfs-systemd-x86_64.tar.xz
Для импорта дистрибутива в WSL 2 необходимо выполнить команду в командной строке Windows:
wsl --import ALTLinux-11 C:\ALTLinux-11 C:\alt-p11-rootfs-systemd-x86_64.tar.xz
После импорта файл образа жесткого диска с Linux будет расположен в C:\ALTLinux-11\ext4.vhdx. В командой строке Windows выполним команду чтобы вывести список всех зарегистрированных дистрибутивов. А после запускаем только что импортированный дистрибутив ALTLinux-11
wsl -l -v
wsl -d ALTLinux-11
После запуска ALT Linux, откроется терминал. В конфигурационном WSL файле для данного дистрибутива нужно разрешить использование systemd:
# echo -e "[boot]\nsystemd=true\n" > /etc/wsl.conf
Для того чтобы заработал systemd нужно остановить и заново запустить дистрибутив. Для этого воспользуемся следующими командами:
# exit
wsl -t ALTLinux-11
wsl -d ALTLinux-11
Чтобы русифицировать локализацию выполните эту команду в терминале:
# echo -e "LANG=ru_RU.UTF-8" > /etc/default/locale
Для обновления пакетов вам необходимо выполнить следующую команду, затем дождаться запроса на согласие обновления пакетов. Вводим Y и подтверждаем нажатием Enter.
# apt-get update && apt-get dist-upgrade
Для корректного отображения шрифтов необходимо установить пакет:
# apt-get install fonts-ttf-ms
Чтобы установить и запустить Lazarus вам необходимо скачать утилиту командной строки make, затем установить Free Pascal компилятор и Lazarus IDE:
# apt-get install make
# apt-get install fpc && apt-get install fpc-src
# apt-get install lazarus
Установка завершена. Для запуска Lazarus выполним команду:
# startlazarus
Прежде чем начать установку компонентов FastReport и FastCube необходимо скачать установочные пакеты. В терминале ALTLinux-11 выполняем команду для установки wget, затем подтверждаем свои действия введя Y и нажав Enter.
# apt-get install wget
Скачиваем Trial версии пакетов FastReport и FastCube:
# wget https://xn--90aia9aifhdb2cxbdg.xn--p1ai/public_download/fr.vcl/fast_report-trial.rpm
# wget https://xn--90aia9aifhdb2cxbdg.xn--p1ai/public_download/fr.vcl/fast_cube-trial.rpm
Для установки FastReport выполним команду в терминале:
# apt-get install ./fast_report*.rpm
Перед установкой пакетов FastReport необходимо скомпилировать пакеты, которые входят в поставку Lazarus и установить дополнительные библиотеки:
# lazbuild --build-ide= --add-package /usr/lib64/lazarus/components/tachart/print/tachartprint.lpk
# lazbuild --build-ide= --add-package /usr/lib64/lazarus/components/tachart/tachartlazaruspkg.lpk
# apt-get install sqlite3 libsqlite3-devel
После чего последовательно выполним следующие команды для компиляции пакетов FastReport:
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fs_lazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fr_lazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxe_lazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frCS_lazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxchartlazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxlazdbf.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxSmartMemo_Laz.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/fqb*.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxlazsqlite.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frxPDFlazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastReport*/Lpks/frLanguageRussianPkg.lpk
Теперь переходим к установке FastCube. Выполните следующую команду в терминале:
# apt-get install ./fast_cube*.rpm
После чего последовательно выполняйте следующие команды для компиляции пакетов FastCube:
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxScript.lpk
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxLazarus.lpk
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxCharting.lpk
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxprint.lpk
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxprintTee.lpk
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/fcxexport.lpk
# lazbuild --build-ide= --add-package /usr/share/FastCube*/Lpks/frLanguageRussianPkg.lpk
На этом установка FastReport и FastCube завершена. Наконец можно попробовать скомпилировать и запустить FastReport Demo. Для запуска Lazarus выполняем команду в терминале:
# startlazarus --skip-last-project
В главном меню Lazarus открываем пункт меню «Проект» -> «Открыть проект…». В диалоговом окне выбираем проект:
/usr/share/FastReport - Trial/Demos/FPC/FastReport/FastReportDemo.lpi
После открытия проекта нажимаем клавишу F9 для компиляции и запуска.
На этом подробная настройка WSL 2 для работы с компонентами FastReport и FastCube в Lazarus для Linux завершена. По всем вопросам обращайтесь в нашу техническую поддержку support@fastreport.ru. Приятного использования!