Здравствуйте !
Около года назад я уже задавл этот вопрос, но тогда ответа не получил. Может быть сейчас образовались знатоки... :-)
По сути : хочу собрать крос-компиллер 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. То библиотеки не те, то чего-то не хватает, то хидеры не стыкуются...
Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти