Страница 1 из 2

Как скомпилить FPC и Lazarus имея только SVN-версии???

Добавлено: 11.11.2007 23:24:00
ViTality
Здравствуйте, проблема в том что скачаны только svn-версии и неполучаеться их скомпилить.
SVN-версии были получеты командами

Код: Выделить всё

svn co http://svn.freepascal.org/svn/fpc/trunk freepascal
svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus

Далее, делаю следующее

Код: Выделить всё

~>  cd freepascal
~/freepascal> make

а в ответ получаю:

Код: Выделить всё

make: -iVSPTPSOTO: Команда не найдена
make: -iSP: Команда не найдена
make: -iTP: Команда не найдена
make: -iSO: Команда не найдена
make: -iTO: Команда не найдена

С лазарусом тоже самое.
Подскажите что делаю не так? Как собрать FPC и Lazarus с нуля?

Добавлено: 11.11.2007 23:39:24
Максим
Вам нужен уже установленный в системе FPC версии 2.0.4 либо 2.2.0. Его можно взять из репозитария дистрибутива либо с сайта разработчиков.

Более подробно процесс описан здесь (PDF).

Добавлено: 12.11.2007 09:46:12
ViTality
Понятно. спасибо за ответ. я читал мануалы про такой способ сборки. Прост думал что есть возможность собрать имея только сорцы.

Добавлено: 12.11.2007 11:31:52
shade
Максим писал(а):Вам нужен уже установленный в системе FPC версии 2.0.4 либо 2.2.0.

Вовсе не обязательно.

Нужен gnu make, binutils, утилиты gnu (cp, ginstall, gmkdir, gecho и т.п.) и бинарь fpс, т.е. ppc386.exe (я так понял у вас win32?).

Где всё это качать, я не знаю. Поэтому проще взять готовый дистрибутив без инсталлятора, выбрать от туда все необходимое и скопилировать, то что желаете.

http://the1st.adygnet.ru/~ftp/pub/draft/fpc_cross2.doc

Добавлено: 12.11.2007 12:43:10
Attid
Где всё это качать, я не знаю.

вроде прям в свн лежит для венды, ссылка на форуме была.

Добавлено: 12.11.2007 15:17:27
ViTality
Извиняюсь, забыл уточнить. Ось - OpenSuse 10.3
make там есть
а binutils зачем?

Добавлено: 13.11.2007 02:03:17
Максим
Поставить уже имеющийся в ОС бинарный пакет с FPC будет самым простым решением.

Добавлено: 13.11.2007 09:23:42
Attid
ну или могу бинарники выложить собраные под бубунтой
попробушь с ними пересобрать

Добавлено: 13.11.2007 13:48:06
ViTality
Максим,Attid
я это понимаю. у меня есть бинарники (которые у меня в подписи).
Просто хотел научиться пользоваться svn-версией.
Под линуксом лазарус собираеться и ставиться. FPC откозался доконца компилироваться т.к. не нашел pkgarchive.ppu.

Теперь про Виндовс.(стоит снапшот)
щас перезагружусь и скажу как внем дело обстоит.
пока командная строка ненаходит make(добавил в path путь к ней поэтому и перезагружаюсь)

Добавлено: 13.11.2007 13:57:22
shade
ViTality писал(а):make: -iVSPTPSOTO: Команда не найдена
make: -iSP: Команда не найдена
make: -iTP: Команда не найдена
make: -iSO: Команда не найдена
make: -iTO: Команда не найдена

Я кажется понял: make не может найти компилятор, укажи полный путь к компилятору fpc (к ppc*, ppc386 - если у тебя i386-совместимый проц) через параметр PP

Например.

Код: Выделить всё

make PP=/usr/local/bin/ppc386

Добавлено: 13.11.2007 14:04:46
GigoVich
Ничего не понимаю.

Убунтятина Гиббон, но 64 бит.
FPC поставил бинарники.
Лазарь взял с SVN-а, но вот компилить его не получается:

Код: Выделить всё

make: -iVSPTPSOTO: Команда не найдена
make: -iSP: Команда не найдена
make: -iTP: Команда не найдена
make: -iSO: Команда не найдена
make: -iTO: Команда не найдена
make -C ide ide
make[1]: -iSP: Команда не найдена
make[1]: Entering directory `/home/gigovich/SVN/lazarus/ide'
make[1]: -iTP: Команда не найдена
make[1]: -iSO: Команда не найдена
make[1]: -iTO: Команда не найдена
make[1]: -iSP: Команда не найдена
make[1]: -iTP: Команда не найдена
make[1]: -iSO: Команда не найдена
make[1]: -iTO: Команда не найдена
make[1]: -iSP: Команда не найдена
make[1]: -iTP: Команда не найдена
make[1]: -iSO: Команда не найдена
make[1]: -iTO: Команда не найдена
make[1]: -iSP: Команда не найдена
make[1]: -iTP: Команда не найдена
make[1]: -iSO: Команда не найдена
make[1]: -iTO: Команда не найдена
make -C ../tools svn2revisioninc OS_TARGET= OPT=''
make[1]: -iSP: Команда не найдена
make[1]: -iTP: Команда не найдена
make[1]: -iSO: Команда не найдена
make[1]: -iTO: Команда не найдена
make[2]: Entering directory `/home/gigovich/SVN/lazarus/tools'
Makefile:177: *** The Makefile doesn't support target linux-, please run fpcmake first.  Останов.
make[2]: Leaving directory `/home/gigovich/SVN/lazarus/tools'
make[1]: *** [ide] Ошибка 2
make[1]: Leaving directory `/home/gigovich/SVN/lazarus/ide'
make: *** [ide] Ошибка 2


компилятор видно из любого места
сорцы фпц тоже скачал, положил в папку и казал путь:

Код: Выделить всё

PATH=/usr/local/fpc:$PATH


Не могу понять в чём дело, неужели действительно "doesn't support target linux"

Добавлено: 13.11.2007 14:10:07
GigoVich
shade писал(а):Например.

Код: Выделить всё

make PP=/usr/local/bin/ppc386

shade спасибо огромное!!! В моём случае просто надо было указать:

Код: Выделить всё

make PP=/usr/bin/ppcx64

Добавлено: 13.11.2007 14:31:42
ViTality
shade
да так оно и есть. после установки бинарника фпк лазарь стал компилиться а вот фпк не захотел (см. выше), точнее не доконца докомпилился.

-----
под виндой
лазарус(12799) компилируеться
а фрипаскаль(9229) всеже не хочет компилироваться
говорит

Код: Выделить всё

Fatal: Can't find unit dbf_prscore used by bufdataset_parser
Fatal: Compilation aborted
хотя эти файлы есть.

Добавлено: 13.11.2007 15:40:02
shade
ViTality писал(а):а вот фпк не захотел (см. выше), точнее не доконца докомпилился.

Приведи свои действия:
что компилишь (какая верисия/ревизия)
чем компилишь (какая верисия/ревизия)
какими командами компиилишь
какие ругательства выдает make

Попробуй обновиться из svn: если берешь из trunc'а, то вполне может быть что ревизия битая...

И еще, не всегда новый компилятор может скомпилировать старые исходники. Лучше компилировать либо той же версией, либо более старой.

ViTality писал(а):под виндой
передумал добавлять путь к make в path.

Если собираешься регулярно компилить, то лучше прописать. Если у тебя стоит делфи, то у него свой make, но так как он никому не нужен, то нужно gnu make должен находиться первым...

Добавлено: 13.11.2007 16:22:42
ViTality
Приведи свои действия:

приду домой повторб действия и отпишусь


под виндой
при последнем обновлении(9229) я написал в предыдущем посту. выдает

Код: Выделить всё

Fatal: Can't find unit dbf_prscore used by bufdataset_parser 
Fatal: Compilation aborted

а компилировал при установленном снапшоте Lazarus-0.9.23-fpc-2.2.1-20070925.win32.
командой make all.

make прописал в переменные окружения.