Cross Compile Linux for FreeBSD

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

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

Cross Compile Linux for FreeBSD

Сообщение anvpro » 13.10.2009 13:22:39

Хочу собрать проект который пишу на Lazarus в Linux Slackware
для FreeBSD
собственно, у меня поставлена FreeBSD в виртуальню машину на моем слаке и проект собирается и работает под фрею, но не удобно это...
писать, потом перетаскивать это все в виртуальню машину там компилить и долго, гораздо удобней было бы собирать бинарник в слаке и уже только тестировать на фре (если это требуется).

Если кому-то удалось уже собрать что-то под Линуксом для Фрибсд - откликнитесь пожалуйста.

ну не могу нигде отыскать нужный для сборки
fpc-i386-freebsd-ld
а без него одна ошибка
Error: Util i386-freebsd-ld not found, switching to external linking
fpc 2.2.4

P.S. На винду собираю без проблем, а вот на FreeBSD - облом, а нада, очень нада ;)
anvpro
незнакомец
 
Сообщения: 3
Зарегистрирован: 13.10.2009 12:46:55

Re: Cross Compile Linux for FreeBSD

Сообщение carrots » 10.03.2010 21:09:58

Тоже, откомпилировать и установить кросскомпилятор для freebsd не могу. Использую Linux Mandriva 2010. Под win32 компилирует без проблем.
Судя по всему где-то проблема с binutils..
Аватара пользователя
carrots
постоялец
 
Сообщения: 138
Зарегистрирован: 28.03.2008 02:13:02

Re: Cross Compile Linux for FreeBSD

Сообщение Logo » 10.03.2010 21:22:17

Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Cross Compile Linux for FreeBSD

Сообщение carrots » 11.03.2010 01:30:12

еще здесь http://www.kernel.org/pub/linux/devel/binutils/ все версии, только ничто не помогает:
Код: Выделить всё
/bin/rm -f fpcmade.x86_64-freebsd Package.fpc ppas.sh script.res link.res
/bin/rm -f *.s *_ppas.sh
make[5]: Залишаю каталог "/home/carrots/fpc_2_4/rtl/freebsd"
make[4]: Залишаю каталог "/home/carrots/fpc_2_4/rtl"
make -C /home/carrots/fpc_2_4/rtl 'OPT=' all
make[4]: Вхожу у каталог "/home/carrots/fpc_2_4/rtl"
make -C freebsd all
make[5]: Вхожу у каталог "/home/carrots/fpc_2_4/rtl/freebsd"
x86_64-freebsd-as -o /home/carrots/fpc_2_4/rtl/units/x86_64-freebsd/prt0.o x86_64/prt0.as
make[5]: x86_64-freebsd-as: Команда не знайдена
make[5]: *** [prt0.o] Помилка 127
make[5]: Залишаю каталог "/home/carrots/fpc_2_4/rtl/freebsd"
make[4]: *** [freebsd_all] Помилка 2
make[4]: Залишаю каталог "/home/carrots/fpc_2_4/rtl"
make[3]: *** [rtl] Помилка 2
make[3]: Залишаю каталог "/home/carrots/fpc_2_4/compiler"
make[2]: *** [cycle] Помилка 2
make[2]: Залишаю каталог "/home/carrots/fpc_2_4/compiler"
make[1]: *** [compiler_cycle] Помилка 2
make[1]: Залишаю каталог "/home/carrots/fpc_2_4"
make: *** [build-stamp.x86_64-freebsd] Помилка 2
Аватара пользователя
carrots
постоялец
 
Сообщения: 138
Зарегистрирован: 28.03.2008 02:13:02

Re: Cross Compile Linux for FreeBSD

Сообщение Logo » 11.03.2010 05:15:37

Распаковываешь binutils-cross-linux-debian.tar.bz2 и папку cross помещаешь в удобное место.
Файлы в cross/bin/i686-freebsd-* либо переименовываешь, либо делаешь на них ссылки с началом i386-freebsd-*

Путь к binutils:
PATH=/путь к каталогу/cross/bin:$PATH

Компилилуем:
make clean all PP=/usr/local/lib/fpc/2.5.1/ppcx64 COMPILER_OPTIONS="-g -gl -O1 -dUseCThreads" OS_TARGET=freebsd CPU_TARGET=i386
(COMPILER_OPTIONS на свое усмотрение)

В некоторых дистрибутивах путь и компиляцию нужно писать в одной строке:
PATH=/путь к каталогу/cross/bin:$PATH;make clean all PP=/usr/local/lib/fpc/2.5.1/ppcx64 COMPILER_OPTIONS="-g -gl -O1 -dUseCThreads" OS_TARGET=freebsd CPU_TARGET=i386
(после $PATH "точка с запятой")
или создать выполняэмый файл с этими двумя строками. Но в Мандриве 2010 можно в одном окне konsole это выполнить по очереди.

Инсталируем:
make crossinstall PP=/usr/local/lib/fpc/2.5.1/ppcx64 OS_TARGET=freebsd CPU_TARGET=i386

Модули будут в /usr/local/lib/fpc/2.5.1/units/i386-frebsd
Если процессор отличный от родного, то будет кросскомпилятор в /usr/local/lib/fpc/2.5.1, например, на процессоре x86_64, кросскомпилятор для i386 называется ppcross386

binutils FreeBSD для x86_64 есть готовый только для Darwin, MacXOS и Gento. Больше я не встречал.
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47


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

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

Сейчас этот форум просматривают: Yandex [Bot] и гости: 7

Рейтинг@Mail.ru