![]() ![]() Подключение к Lazarus новой версии компилятора FPCВариант № 1 Все испытания проводились на ОС Ubuntu 10.10 и 10.04. И некоторые требования к пакетам а так же связанные с ними ошибки будут отражены в данной статье! Скачиваем
В убунте 11 может потребоватся пакет gawk . svn checkout http://svn.freepascal.org/svn/fpc/trunk fpctrunk cd fpctrunk svn up -r 16795
Распаковываем
Создадим каталог для утилиты кросскомпиляции. mkdir ~/fpc_tools
И Извлечем содержимое binutils-2.20.tar.gz в каталог ~/fpc_tools Далее Создадим каталог для среды разработки и компилятора. mkdir ~/lazarus/ cd ~/lazarus/ mkdir ~/fpc/ cd ~/fpc/ mkdir ~/2.6.0 cd cd ~/lazarus/ mkdir ~/lazarus
И соответственно извлечем туда компилятор и среду. в результате у нас получатся папки lazarus/fpc/2.6.0/ lazarus/lazarus/
Зависимости
sudo apt-get install -y alien libncurses5-dev libXp-dev libgtk2.0-dev
Временный компилятор
sudo apt-get install fp-utils
Установка и Конфигурирование BinUtils
cd ~/fpc_tools/binutils-2.20 ./configure --target=arm-linux --disable-werror make sudo make install mkdir ~/lazarus/binutils ln -s /usr/local/bin/arm-linux-ar ~/lazarus/binutils/ar ln -s /usr/local/bin/arm-linux-ld ~/lazarus/binutils/ld sudo mv /usr/local/bin/arm-linux-as /usr/local/bin/arm-linux-as_org
Далее немного подправим загрузчик sudo gedit /usr/local/bin/arm-linux-as
#!/bin/sh /usr/local/bin/arm-linux-as_org -meabi=5 $@
Это необходимо что бы приложение загружалось через eabi v5 в случае необходимости можете выставить v4
sudo chmod +x /usr/local/bin/arm-linux-as ln -s /usr/local/bin/arm-linux-as ~/lazarus/binutils/as
Компиляция FPC из исходников
Компиляция и установка займет некоторое время примерно 2-10мин. cd ~/lazarus/fpc/2.6.0 make all OPT='-gl -O3p3' PP=/usr/bin/ppc386 (add NOGDB=1 at the end if asked) sudo make install PP=/usr/bin/ppc386 PREFIX=/usr/ (add NOGDB=1 at the end if asked) sudo rm /usr/bin/ppc386 sudo ln -s /usr/lib/fpc/2.6.0/ppc386 /usr/bin/ppc386 sudo mkdir /usr/share/fpcsrc/ sudo ln -sf ~/lazarus/fpc/2.6.0 /usr/share/fpcsrc/2.6.0 sudo /usr/lib/fpc/2.6.0/samplecfg /usr/lib/fpc/2.6.0/ /etc
Сделаем в FPC возможность кросс компиляции для ARM-Linux
cd /media/DATA/Downloads/ sudo cp fpc-2.5.1.arm-linux.tar.gz /usr/ cd /usr/ sudo tar -xvf fpc-2.5.1.arm-linux.tar.gz sudo rm -f fpc-2.5.1.arm-linux.tar.gz sudo ln -s /usr/lib/fpc/2.5.1/ppcrossarm /usr/bin/ppcrossarm
Создание пользовательского fpc.cfg
gedit ~/.fpc.cfg
#INCLUDE /etc/fpc.cfg #DEFINE DEMOTEST #DEFINE DEMOTEST1 #DEFINE LAZARUS -Fu/usr/lib/fpc/2.6.0/units/$fpctarget/* -Fl/usr/lib/fpc/2.6.0/units/$fpctarget/rtl/ -a -Sd -Xd -Xs -O- #IFDEF CPUARM -Xr/usr/lib/fpc/2.6.0/units/arm-linux/rtl/ -Xr/home/predator/lazarus/fpc/libcross -XR/home/predator/lazarus/fpc/ -darm -Tlinux #ENDIF
ЛазарусПерейдем в каталог лазаруса и соберем его! cd ~/lazarus/lazarus make clean all
Запуск лазарусаsudo ./lazarus
Вариант № 2 Как известно, разработка FPC и Lazarus идёт параллельно, и далеко не всегда тестовые сборки Lazarus используют последнюю версию FPC. Так, в данный момент в SVN-релизах Lazarus используется FPC 2.4.3, тогда как на официальном сайте Free Pascal доступна тестовая версия нового компилятора FPC 2.5.1. Если вы хотите подключить к Lazarus последнюю версию FPC, сделайте следующее: 1. Скачайте по ссылкам [один] и [два] сборку последней версии FPC и её исходный код соответственно (файлы fpc-2.5.1.i386-win32.zip и fpc.zip). 2. В папке C:\lazarus\fpc создайте новый каталог 2.5.1. 3. Посмотрите внимательное, какие подкаталоги у вас лежат в каталоге C:\lazarus\fpc\2.4.3 и положите точно такие же подкаталоги из скачанных архивов в новый каталог C:\lazarus\fpc\2.5.1. 4. Скопируйте в каталог c:\lazarus\fpc\2.5.1\bin\i386-win32 недостающие файлы из соответствующего каталога от старой версии компилятора (в частности gcc и т.п. – около 20-30 файлов). Обязательно скопируйте файл fpc.cfg. Таким образом вы получите папку с новой версией компилятора, готовой к работе. Далее правим fpc.cfg, заменяя во всех путях название папки с версией компилятора (2.4.3 на 2.5.1). Чтобы убедиться, что вы всё сделали правильно, попробуйте откомпилировать пустой проект. Если всё прошло успешно, можете пересобрать Lazarus с новой версией FPC. Первоисточник - http://lazarus.su/other/lazarus-fpc-2-5-1.html
![]() ![]() |
Комментарии (1):
Мицуко
К сожалению, основное отличие Lazarus от Delphi - все-таки чисто программистское. Lazarus не использует локальных кодировок - только Unicode. Соответственно, пытаться обрабатывать на нем русские тексты посимвольно - физически невозможно!!! 7 июня 2012Добавление комментария