Пересборка FPC

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Пересборка FPC

Сообщение S_Gur » 24.05.2020 11:15:58

Господа, прошу помощи. Вчера по итогам общения англоязычном лазарусовском форуме была исправлена ошибка в исходниках FPC. Если кому интересно, смотреть здесь - https://svn.freepascal.org/cgi-bin/view ... sion=45479. Расскажите, пожалуйста, как с наименьшими потерями выполнить пересборку имеющегося FPC. Инсталлирован под винды Лазарус 2.0.8 64-хбитный. В идеале хотелось бы просто подменить два файла и пересобрать, ничего больше не трогая
S_Gur
постоялец
 
Сообщения: 120
Зарегистрирован: 30.12.2018 22:17:42

Re: Пересборка FPC

Сообщение zub » 24.05.2020 11:53:31

Подменить 2 файла получится только если в них небыло никаких изменений с версии которая уже установлена до версии на которую обновляете, иначе эти изменения потребуют изменений в других файлах и т.д. и т.п.
Правильно будет обновить паралельно установить еще один fpc. Взять исходники из транка, собрать, настроить чтоб работал, а потом уже:
>>В идеале хотелось бы просто изменить в настройках лазаря путь к компилятору и пересобрать лазаря а потом свою программу, ничего больше не трогая
zub
долгожитель
 
Сообщения: 2884
Зарегистрирован: 14.11.2005 23:51:26

Re: Пересборка FPC

Сообщение Снег Север » 24.05.2020 12:33:02

zub, извините, но у топикстартера вопрос был явно о другом - какими командами перекомпилировать/пересобрать сам fpc из стабильной сборки лазаруса. Если до того никакие транковые версии человек не собирал и впредь собирать не предполагает.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Пересборка FPC

Сообщение zub » 24.05.2020 15:09:11

Вопрос то может и был о другом, а ответ - хочешь последние изменения? будь добр покрасноглазить.
1. Как собрать компилятор, если емнип в поставке лазаря нет его исходников?
2. Подменить файлики без последствий = выиграть в лоторею. нужно смотреть что где менялось и что от чего зависит

зы. Покрасноглазить - это громко сказано)) всего на полшишки, думаю даже капиляры не полопаются))
zub
долгожитель
 
Сообщения: 2884
Зарегистрирован: 14.11.2005 23:51:26

Re: Пересборка FPC

Сообщение Sharfik » 24.05.2020 18:53:06

zub писал(а):Вопрос то может и был о другом, а ответ - хочешь последние изменения? будь добр покрасноглазить.

:lol:
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 759
Зарегистрирован: 20.07.2013 01:04:30

Re: Пересборка FPC

Сообщение zoltanleo » 27.05.2020 02:26:02

S_Gur писал(а):Расскажите, пожалуйста, как с наименьшими потерями выполнить пересборку имеющегося FPC. Инсталлирован под винды Лазарус 2.0.8 64-хбитный. В идеале хотелось бы просто подменить два файла и пересобрать, ничего больше не трогая

"Не трогать" получится только Лазарь, транк компилятора (судя по ревизии) придется собирать самому, а потом в настройках Лазаря указывать новые пути к исходникам, fpc.exe/ppcx64.exe, make.exe. Если сильно надо, то вот примерный алгоритм (специально не пишу всяческие переменные, дабы не усложнять пример):
1. скачиваешь исходникии компилятора в какую-нибудь папку, например d:\lazarus_208_x64\fpc_311_trunk - далее работаешь с командной строкой
2. указываешь в командной строке путь к бинарникам стабильного компилятора, например:
Код: Выделить всё
set path=d:\lazarus_208_x64\fpc\3.0.4\bin\x86_64-win64;%path%

3. Там же переходишь в корень папки с исходниками транка
Код: Выделить всё
cd /d d:\lazarus_208_x64\fpc_311_trunk

4. собираешь новый компилятор
Код: Выделить всё
make clean all install INSTALL_PREFIX=d:\lazarus_208_x64\fpc_311_trunk PP=d:\lazarus_208_x64\fpc\3.0.4\bin\x86_64-win64\ppcx64.exe OS_SOURCE=win64 CPU_SOURCE=x86_64 OS_TARGET=win64 CPU_TARGET=x86_64 OVERRIDEVERSIONCHECK=1 DATA2INC=d:\lazarus_208_x64\fpc_311_trunk\utils\data2inc.exe

5. Копируешь "недостающие" файлы из стабильной сборки в новую
Код: Выделить всё
if exist d:\lazarus_208_x64\fpc_311_trunk\bin\x86_64-win64 replace d:\lazarus_208_x64\fpc_311_trunk\bin\x86_64-win64\*.* d:\lazarus_208_x64\fpc\3.0.4\bin\x86_64-win64\*.* /a

6. Создаешь новый файл конфигурации fpc.cfg
Код: Выделить всё
fpcmkcfg -d basepath=d:\lazarus_208_x64\fpc_311_trunk -o d:\lazarus_208_x64\fpc_311_trunk\bin\x86_64-win64\fpc.cfg


Все. Можно запускать Лазарь, идти в меню Tools --> Options и задавать настройки примерно так (у меня в путях макросы, потому что Лазарь дял кросскомпиляции использует fpc обеих разрядностей) - пути можно прописывать явно

Изображение
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 457
Зарегистрирован: 17.10.2013 10:55:01

Re: Пересборка FPC

Сообщение S_Gur » 27.05.2020 09:03:40

zoltanleo, спасибо большое, сегодня займусь
S_Gur
постоялец
 
Сообщения: 120
Зарегистрирован: 30.12.2018 22:17:42


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19

Рейтинг@Mail.ru