8:50 PM Как я ставил транковый fpc и lazarus на Windows 7 x64 |
Вскоре после успешной попытки установки сабжа под Линуксом при помощи 1. Создаем необходимую структуру папок.Структура должна быть строго упорядочена, для чего - станет понятно ниже.
d:\development
Теперь положим в нее еще три папки: а) бинарные файлы последней стабильной версии компилятора (нужны для компиляции и сборки транковой версии fpc из ресурсов) б) собственно свежий транк компилятора (лежит тут) в) и свежий транк Лазаря (лежит тут) Бинарные (скомпилированные) файлы последнего стабильного релиза компилятора для win32 можно взять здесь (на момент правки статьи это была версия 3.0.4, которая лежит здесь в виде виде экзешника fpc-3.0.4.i386-win32.exe). Скачиваем его, запускаем, для распаковки указываем путь d:\development\fpc_304 В указанной папке должны появиться папки bin, demo, doc и т.д. Чтобы не "мусорить" в реестре, снимите в чекбоксах инсталлятора соответствующие галочки. примечание (очень важное): штатный инсталлятор обязательно прописывает пути к fpc_304 в системную переменную PATH (Мой компьютер - Свойства - Дополнительные параметры системы - Переменные среды - PATH). Прежде, чем двигаться дальше, необходимо удалить эти пути из системы. Иначе при сборке и компиляции среды Лазарус получит ссылки на стабильный релиз компилятора, а не на транковый.
Далее скачиваем при помощи svn-клиента (я использую бесплатный и руссифицированный TortoiseSVN) свежий последний транк компилятора в папку (svn путь для клиента https://svn.freepascal.org/svn/fpc/trunk)
d:\development\fpc_trunk
, а также свежий транк Лазаря в папку (svn путь для клиента https://svn.freepascal.org/svn/lazarus/trunk)
d:\development\lazarus_trunk
2. Создаем bat-файлы и собираем исходники.Поскольку в Винде проще запустить файл мышкой, чем мучиться с командной строкой, то создадим командные файлы, которые сделают всю рутину за нас.
Если процесс сборки компилятора и Лазаруса будет единовременным, то лучше использовать один bat-файл (об этом ниже). Если же собирается либо компилятор, либо среда, то удобнее использовать один из них. Нам понадобятся их два: а) для компиляции и сборки транковой версии компилятора (назовем его makefpc.bat) б) для компиляции и сборки транковой версии Лазаруса (назовем его makelaz.bat) Обратите внимание: 1. файлы лучше поместить в корневую папку d:\development 2. файлы необходимо запускать под админской учеткой 3. кодировка файла должна быть в win1251(для русской локали), чтобы русские сообщения в консоли выводились корректно Создаем файл makefpc.bat со следующим содержимым
@echo on
chcp 1251
set MyRoot=d:\archive\development
set FPC_current_rev=fpc_trunk
set FPC_stable_utils=fpc304\bin\i386-win32\
set FPC_source=%MyRoot%\%FPC_current_rev%
set FPC_binutils=%FPC_source%\bin\i386-win32
set FPC_stable_binutils=%MyRoot%\fpc_stable\%FPC_stable_utils%
set PATH=%MyRoot%;%FPC_source%;%FPC_binutils%;%FPC_stable_binutils%;%PATH%
cd %FPC_source%
@echo off
:: Компилируем fpc
make clean all install INSTALL_PREFIX=%FPC_source% PP=%FPC_stable_binutils%\ppc386.exe DATA2INC=%FPC_source%\utils\data2inc.exe
:: Копируем "недостающие" файлы из стабильного релиза (fpc_304\bin\i386-win32) в транковый (fpc_trunk\bin\i386-win32) с заменой на новые при необходимости
replace %FPC_stable_binutils%\*.* %FPC_binutils% /a
:: копируем c заменой на более новые файлы из fpc_304\bin\i386-win32 в fpc_trunk\bin\i386-win32
replace %FPC_stable_binutils%\*.* %FPC_binutils% /u
:: переходим в каталог с утилитами нового fpc
cd /d %FPC_binutils%
:: создаем конфигурационный файл fpc.cfg, который ляжет сюда %FPC_binutils%
fpcmkcfg -d basepath=%FPC_source% -o .\fpc.cfg
примечание: 1. команда set FPC_current_rev=fpc_trunk задает папку с текущей ревизией собираемого транка. Если планируется использовать несколько версий компилятора (например, для каждой сборки Лазаря свою), то папку с новой версией лучше сразу переименовывать после скачивания из репозитория (например, fpc_r37690), внося соответствующую правку в батник (для указанного примера это будет выглядеть так: setFPC_current_rev=fpc_r37690). 2. выделенная желтым строка от make clean до data2inc.exe - единое целое без переносов на новую строку
В результате появится папка d:\development\fpc_trunk\bin\i386-win32 , где будут лежать бинарники новой версии. Cоздаем файл makelaz.bat для компиляции и сборки Лазаря, который первоначально будет иметь следующую конфигурацию
@echo off
chcp 1251 set MyRoot=d:\archive\development set MyFPC=%MyRoot%\fpc_trunk set MyBinutils=%MyFPC%\bin\i386-win32 set MyLaz_root=%MyRoot%\lazarus_trunk set PATH=%MyBinutils%;%MyLaz_root%;%MyFPC%;%PATH% :: переходим в корень Лазаруса cd /d %MyLaz_root% :: создаем папку для хранения настроек среды if not exist %MyLaz_root%\_config md %MyLaz_root%\_config :: создаем указатель, где искать папку с настройками if not exist %MyLaz_root%\lazarus.cfg echo --primary-config-path=%MyLaz_root%\_config>%MyLaz_root%\lazarus.cfg :: компилим и собираем Лазарь make clean all OPT="-glw2" Примечание: есть еще один, упрощенный способ, сборки Лазаруса. Он особенно хорошо подходит в том случае, если хочется поставить для экспериментов другую версию транка, не удаляя предыдущие. Для этого нужно сделать следующее:
c:\users\leyba>set PATH=d:\archive\development\fpc_r37690\bin\i386-win32
c:\users\leyba>cd /d d:\Archive\development\lazarus_19_r57110\
d:\Archive\development\lazarus_19_r57110> make bigide
и ждем окончания процесса Примечание 2: обратите внимание, что после запуска последнего батника в корне Лазаруса появились папка _config с параметрами конфига собранной версии среды и конфигурационный файл lazarus.cfg (содержащий строку --primary-config-path=d:\Archive\development\lazarus_trank\_config), где должен быть указан путь к этой самой папке. Если вы собираете Лазарус упрощенным способом, то их придется создавать вручную. Иначе при первом запуске Лазарус начнет задавать вопросы о размещении файлов конфигурации(если на машине нет других установок Лазаруса) или об объединении с конфигами других сборок (если таковые уже есть).
Примечание 3: если хочется полностью обновить и компилятор и среду, то можно воспользоваться объединенным батником, который будет выглядеть примерно так (назовем его make_fpc_laz.bat) @echo on chcp 1251 set MyRoot=d:\archive\development set FPC_current_rev=fpc_trunk set FPC_stable_utils=fpc304\bin\i386-win32\ set FPC_source=%MyRoot%\%FPC_current_rev% set FPC_binutils=%FPC_source%\bin\i386-win32 set FPC_stable_binutils=%MyRoot%\fpc_stable\%FPC_stable_utils% set MyLaz_root=%MyRoot%\lazarus_trunk set PATH=%MyRoot%;%FPC_source%;%FPC_binutils%;%FPC_stable_binutils%;%MyLaz_root%;%PATH% :: переходим в корень fpc_trunk cd %FPC_source% @echo off :: Компилируем fpc make clean all install INSTALL_PREFIX=%FPC_source% PP=%FPC_stable_binutils%\ppc386.exe DATA2INC=%FPC_source%\utils\data2inc.exe :: Копируем "недостающие" файлы из стабильного релиза (fpc_304\bin\i386-win32) в транковый (fpc_trunk\bin\i386-win32) с заменой на новые при необходимости replace %FPC_stable_binutils%\*.* %FPC_binutils% /a :: копируем c заменой на более новые файлы из fpc_304\bin\i386-win32 в fpc_trunk\bin\i386-win32 replace %FPC_stable_binutils%\*.* %FPC_binutils% /u :: переходим в каталог с утилитами нового fpc cd /d %FPC_binutils% :: создаем конфигурационный файл fpc.cfg, который ляжет сюда %FPC_binutils% fpcmkcfg -d basepath=%FPC_source% -o .\fpc.cfg :: переходим в корень Лазаруса cd /d %MyLaz_root% :: создаем папку для хранения настроек среды if not exist %MyLaz_root%\_config md %MyLaz_root%\_config :: создаем указатель, где искать папку с настройками if not exist %MyLaz_root%\lazarus.cfg echo --primary-config-path=%MyLaz_root%\_config>%MyLaz_root%\lazarus.cfg :: компилим и собираем Лазарь make clean all OPT="-glw2" Теперь идем в папку lazarus_trunk и запускаем startlazarus.exe. При первом запуске среда потребует указать пути к компилятору, дебаггеру, конфигурационному файлу и сорцам комплятора. Все это нужно искать в папке fpc_trunk (строго говоря, достаточно указать папку с сорцами компилятора и путь к fpc.exe, среда остальное найдет сама. Перфекционисты могут также прописывать пути при помощи макросов среды и относительных путей, например, в нашем случае путь к сорцам компилятора будет выглядеть в IDE как: ../fpc_trunk, а к файлу fpc.exe будет таким: $(FPCSrcDir)/bin/$(TargetCPU)-$(TargetOS)/fpc.exe. Если я правильно понял, пути надо выставлять именно в такой очередности, тогда и макросы "заработают" правильно ). 3. Доработка напильником.Если для Дельфи существуют утилиты, позволяющие сохранять настройки среды, то в отношении Лазаря ситуация проявляется с точностью до наоборот. В самой среде механизм сохранения пользовательских настроек находится пока в зачаточном состоянии, простое копирование файлов не всегда работает корректно.
К счастью, самую нудную часть настройки (на мой взгляд), а именно цветовую схему редактора, всегда можно импортировать в среду, если она была предварительно экспортирована в виде xml-файла из другой сборки. Итак, открываем среду из которой мы собираемся перейти на свежую, идем Сервис ► Параметры ► Редактор ► Цвета Жмем на кнопку с картинкой дискетки, чтобы сохранить текущую цветовую схему. Ищем папку _config с настройками свежеустановленного Лазаря, где открываем папку userschemes, а потом и сохраняем цветовую схему с каким-нибудь нетривиальным названием. Теперь закрываем старую среду и открываем новую, идем к тому же пункту настроек и в выпадающем списке находим и выбираем сохраненную ранее схему Справедливости ради надо сказать, что существует очень продвинутый инструмент для легкой кастомизации цветовых схем - Delphi IDE Theme Editor, вот только работает он для сборок, установленных штатным инсталлятором, поскольку ищет файлы с настройками строго здесь C:\Users\<Windows User>\AppData\Local\lazarus\userschemes. В утешении могу добавить, что для Лазаруса от разработчиков можно скачать множество цветовых схем. Чтобы использовать их, достаточно распаковать архив в выше упомянутую папку userschemes и перезапустить среду. |
|
Всего комментариев: 6 | |
| |