Ada_Ru форум

Обсуждение языка Ада

GNAT : кросс компиллятор

Оставить новое сообщение

Сообщения

sv_lary
GNAT : кросс компиллятор
2013-03-06 02:55:49

Здравствуйте !

Около года назад я уже задавл этот вопрос, но тогда ответа не получил. Может быть сейчас образовались знатоки... :-)

 

По сути : хочу собрать крос-компиллер Ada для PowerPC.

Технология сборки крос GCC хорошо описана тут : http://www.ifp.illinois.edu/~nakazato/tips/xgcc.html

Собираются все кросс-компиляторы, кроме Ада. Проблем нет.

 

Но, если я для конфигуратора добавляю явное указание языка :

 

--enable-languages=c,c++,ada

 

Тогда, в момент сборки gnat, выдаётся сообщение о том, что работа с файлом dirent.h запрещена и дальнейшая работа

прекращается:

 

/usr/local/powerpc-eabi/powerpc-eabi/include/sys/dirent.h:10:2: ошибка: #error "<dirent.h> not supported"

 

После поисков в иНете, нашел только информацию о том, что в последних версиях newlib действительно файл <dirent.h>

не поддерживается. А для сборки gnat он нужен.

 

Но как выйти из этой ситуации ?

 

Сергей Ларионов

6 марта 2013

А использовать стандартный glibc не получится?

Вы на какой ОС работаете?

 

У меня Gentoo Linux, тут есть чудная штука - пакет sys-devel/crossdev. Его ставишь и можно одной командой собрать кросс-окружение для большого числа target-ов.

 

Я на основе него когда-то собрал кросс-gnat для ARM.

 

x220 ~ # crossdev -t help

Supported Architectures:

- alpha - arm / armeb

- hppa (parisc) - ia64

- i386 / i486 / i586 / i686 (x86) - m68k

- mips / mipsel / mips64 / mips64el

- powerpc (ppc) / powerpc64 (ppc64)

- sparc / sparc64 - s390 / s390x

- sh / sh[1-5] / sh64 - x86_64 (amd64)

Supported C Libraries:

- glibc (gnu)

- klibc [prob wont work]

- newlib [bare metal/no operating system]

- uclibc [not all arches are ported]

Special Targets:

- avr http://www.nongnu.org/avr-libc/

- bfin http://blackfin.uclinux.org/

- h8300 http://h8300-hms.sourceforge.net/

- mingw32 http://www.mingw.org/

- msp430 http://mspgcc.sourceforge.net/

- nios2

http://www.altera.com/products/ip/processors/nios2/ni2-index.html - xc16x http://www.infineon.com/

- ee / iop / dvp (ps2) [Playstation 2 targets]

- ppu / spu (cell) [Cell/Playstation 3 targets]

Softfloat toolchains:

Include 'softfloat' in the 'vendor' field

e.g. armeb-softfloat-linux-uclibc powerpc-booya_softfloat-linux-gnu

Здравствуйте!

 

Чтв 07 Мар 2013 12:53:35 +0400, Maxim Reznik <reznikmm@...> написал:

Вы на какой ОС работаете?

 

На моём компе стоит Ubuntu, но у одно из коллег - Gentoo. Попробую подкатиться...

Здравствуйте !

 

Чтв 07 Мар 2013 12:53:35 +0400, Maxim Reznik <reznikmm@...> написал:

У меня Gentoo Linux, тут есть чудная штука - пакет sys-devel/crossdev. Его ставишь и можно одной командой собрать кросс-окружение для большого числа target-ов.

 

Целый день сегодня воевали, но так и не удалось добиться результата. Обязательным условием является строгое соответствие версий GCC, binutil, GNAT для нативной системы и выбор подходящих исходов

для сборки кросс-тулзов ...

Перебрали кучу вариантов, но так и не удалось собрать кросс-ada. То библиотеки не те, то чего-то не хватает, то хидеры не стыкуются...

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти