Здравствуйте! В прошлом году я пытался собрать кросс-компилятор для Ады x86 -> PowerPC. Не получилось, увы... В этом году я возобновил эти попытки и в результате получил сообщение об ошибке, во время компилляции кросс-ады: powerpc-elf/include/sys/dirent.h:10:2: ошибка: #error "<dirent.h> not supported" Ну да, это - пустой файл, в котором только и написано, что он не поддерживается. И что делать ? Может кто знает, как победить эту проблему? Или у кого-то есть кросс-компиллер для ppc (желательно - е500) ? Сергей Ларионов 12.11.2014
On 11/12/2014 01:39 PM, Сергей Ларионов sv_lary@... [ada_ru] wrote: > Здравствуйте! > > В прошлом году я пытался собрать кросс-компилятор для Ады x86 -> > PowerPC. Не получилось, увы... > В этом году я возобновил эти попытки и в результате получил сообщение об > ошибке, во время компилляции кросс-ады: > > powerpc-elf/include/sys/dirent.h:10:2: ошибка: #error "<dirent.h> not > supported" > > Ну да, это - пустой файл, в котором только и написано, что он не > поддерживается. > И что делать ? > > Может кто знает, как победить эту проблему? > Или у кого-то есть кросс-компиллер для ppc (желательно - е500) ? > Кросс-компилятор строится под какую-то целевую операционную систему. Под какую Вы пробуете его собрать? "Родной" компилятор для PPC64 есть у Fedora. Возможно и в других дистрибутивах он будет.
Здравствуйте, Вадим! Чтв 13 Ноя 2014 14:22:54 +0600, Vadim Godunko vgodunko@... [ada ru] <ada [email protected]> написал: > Кросс-компилятор строится под какую-то целевую операционную систему. Под > какую Вы пробуете его собрать? На самом деле - вопрос нетривиальный. :-) Заказчика мы увереяем, что это - ОС ВС...(знаете, я думаю) Ну а что туда на заводе впендюрили во FreeScale - сказать трудно... Но пакеты там - rpm. Но - какая разница? Я в параметрах configure указал arm32-elf. Что ещё нужно? > > "Родной" компилятор для PPC64 есть у Fedora. Возможно и в других Что в данном контексте означает слово "Родной" ? Он работает на PPC64 или он генерит код для РРС64 или и то и другое разом ? -- Всего хорошего! Сергей Ларионов
On 11/13/2014 07:43 PM, Сергей Ларионов sv_lary@... [ada_ru] wrote: > > Чтв 13 Ноя 2014 14:22:54 +0600, Vadim Godunko vgodunko@... > [ada_ru] <[email protected]> написал: > > Кросс-компилятор строится под какую-то целевую операционную систему. Под > > какую Вы пробуете его собрать? > > На самом деле - вопрос нетривиальный. :-) Заказчика мы увереяем, что это > - ОС ВС...(знаете, я думаю) > Ну а что туда на заводе впендюрили во FreeScale - сказать трудно... Но > пакеты там - rpm. Но - какая разница? Есть компилятор, есть RTL. Если кросс-компилятор будет исполняться на платформе разработки, то RTL будет использоваться программами на целевой платформе. Полная Ada RTL использует много разных функций операционной системы. И если чего-то на целевой платформе отсутствует - придётся взять напильник и пилить, пилить, пилить эту самую RTL, удаляя модули, использующие отсутствующий на целевой платформе функции. > Я в параметрах configure указал arm32-elf. Что ещё нужно? > Погодите, ARM это ни разу не PowerPC. Вы указали процессор, формат объектных/исполняемых файлов, а нужно ещё операционную систему. Из того, что упоминается в Makefile-ах для ARM существуют варианты: VxWorks, Andriod, Linux (GNU eabi), Nucleus. И для каждой операционной системы есть (и не один) специфический пакет. Для PPC (и e500v2) упоминаются только VxWorks и Linux. > > "Родной" компилятор для PPC64 есть у Fedora. Возможно и в других > Что в данном контексте означает слово "Родной" ? Он работает на PPC64 > или он генерит код для РРС64 > или и то и другое разом ? > Он работает на PowerPC/Linux и собирает приложения для PowerPC/Linux.
Здравствуйте, Вадим ! Птн 14 Ноя 2014 13:13:56 +0600, Vadim Godunko vgodunko@... [ada ru] <ada [email protected]> написал: > Погодите, ARM это ни разу не PowerPC. Виноват, это я уже в полусне был... Разумеется - ppc ! > Для PPC (и e500v2) упоминаются только VxWorks и Linux. Вот здесь, пожалуйста, подробнее! Для особо тупых! То, что "упоминается", это я читал много раз и в разных местах.... А вот конкретно - откуда можно скачать кросс-компиллятор (+рантайм) который сам работает на х86, а генерит программы для Linux elf на PPC-32 ? Или - где есть инструкция, как его сделать самому? > Он работает на PowerPC/Linux и собирает приложения для PowerPC/Linux. Для меня этот вариант - не самый удачный (всё-таки мой х86 гораздо удобнее для разработки), но я готов это терпеть, если действительно есть такой вариант. Подскажите, пожалуйста! Спасибо за ответы ! -- Всего хорошего! Сергей Ларионов
On 11/14/2014 09:07 PM, Сергей Ларионов sv_lary@... [ada_ru] wrote: > > > Для PPC (и e500v2) упоминаются только VxWorks и Linux. > > Вот здесь, пожалуйста, подробнее! Для особо тупых! > Судя по Makefile.in в gcc/ada/gcc-interface для их использования нужно задавать конфигурации типа powerpc-wrs-vxworks и powerpc-linux. "Типа" потому, что там какие-то шаблоны для имён используются. Интересно, что VxWorks подразумевает деление для PPC/e500, а для Linux они одинаковы. > То, что "упоминается", это я читал много раз и в разных местах.... > А вот конкретно - откуда можно скачать кросс-компиллятор (+рантайм) > который сам работает на х86, а генерит программы для Linux elf на PPC-32 ? > > Или - где есть инструкция, как его сделать самому? > Поглядите в любом дистрибутиве Linux. Для OpenSUSE например есть дополнительный репозиторий предоставляющий готовые кросс компиляторы для многих платформ. > > Он работает на PowerPC/Linux и собирает приложения для PowerPC/Linux. > > Для меня этот вариант - не самый удачный (всё-таки мой х86 гораздо > удобнее для разработки), > но я готов это терпеть, если действительно есть такой вариант. > Подскажите, пожалуйста! > Знаю только, что на той машине был установлен Fedora для PowerPC 64. PS. А ещё лучше - обсудить вопрос с разработчиками компилятора. http://www.adacore.com/
Сергей, > А вот конкретно - откуда можно скачать кросс-компиллятор (+рантайм) > который сам работает на х86, а генерит программы для Linux elf на PPC-32 ? > > Или - где есть инструкция, как его сделать самому? Принцип всегда примерно один и тот же - если нужен кросс с платформы Х на платформу У, на этапе конфигурации указываете параметры --build=x86-linux --target=ppc-linux Особенных секретов нет, не считая конечно того, что нестандартные сборки вручную на коленке - это всегда головная боль, причем даже если вдруг и соберется, за работоспособность полученной "неведомой зверушки" никто не поручится. Поэтому мне хотелось бы присоединиться к Вадиму, - > PS. А ещё лучше - обсудить вопрос с разработчиками компилятора. - и посоветовать лучше изучить возможность заключения контракта на разработку официального порта и его техподдержку. Особенно когда это не хобби, а фигурирует некий заказчик, да еще и с ОС ВС. Не рекламы ради, а исключительно заботы об успешном и безрисковом завершении проекта для. С уважением, Василий Фофанов, компания AdaCore.
Здравствуйте, Вадим! Втр 18 Ноя 2014 18:47:58 +0600, Vadim Godunko vgodunko@... [ada ru] <ada [email protected]> написал: > нужно задавать конфигурации типа powerpc-wrs-vxworks и powerpc-linux Да, при попытке создать кросс-компиллер я задавал именн powerpc-linux >Для OpenSUSE например есть дополнительный репозиторий предоставляющий готовые кросс компиляторы > для многих платформ Очень интересно! У меня сейчас ка раз OpenSUSE ! Не подскажете - где искать эти доп. репозитарии ? > А ещё лучше - обсудить вопрос с разработчиками компилятора. Пытался... :-( Ответ: "Напишите нам, что Вам нужно и мы выставим счёт, после оплаты которого..." . -- Всего хорошего! Сергей Ларионов
Здравствуйте, Василий ! Втр 18 Ноя 2014 20:41:05 +0600, Fofanov Vasiliy fofanov@... [ada ru] <ada [email protected]> написал: > контракта на разработку официального порта и его техподдержку. Для заключения такого контракта нужна высочайшая воля начальства. А как убедить начальство в том, что это работает, не показав ни одной работающей программы?! Знаете, что я услышал? Типа: - Это же язык, сделанный по заказу американского МО !!! Вы что - с ума сошли?! Врагам потакать?! - Все на С пишут реал-тайм, а Вам чего не хватает? - Что бы программа была надёжной, надо её правильно писать, а не деньги тратить! Ну и в таком духе... Если бы была возможность попробовать хотя бы триальную версию на 1-3 месяца, я бы мог что-то более внятное произнести в кабинете с высоким потолком... :-) -- Всего хорошего! Сергей Ларионов
> Для заключения такого контракта нужна высочайшая воля начальства. А как убедить начальство в том, что это работает, не показав ни одной работающей программы?! Тут конечно получается немного заколдованный круг, но его можно разорвать, воспользовавшись уже существующими сборками для x86-linux и/или ppc-linux. А вопрос удобства среды разработки временно отложить. > Знаете, что я услышал? Типа: > > - Это же язык, сделанный по заказу американского МО !!! Вы что - с ума сошли?! Врагам потакать?! Вы на это можете ответить, что по чьему заказу язык сделали 40 лет назад - представляет нынче только исторический интерес, в частности американское МО давным-давно не требует, чтобы программы писались именно на нём. В то же время, на этот язык существует российский стандарт ГОСТ 27831-88, который имеет действующий статус. Так что это ничуть не менее российский язык программирования, чем тот же Си - причем на последний, что характерно, стандарта ГОСТ не существует. > - Все на С пишут реал-тайм, а Вам чего не хватает? Ну, на подобный вопрос надо действительно быть в состоянии дать ответ, иначе оправдать смену технологии программирования будет тяжело. Надеюсь, у вас есть более сильная мотивировка, чем простое желание попробовать другой язык :) > - Что бы программа была надёжной, надо её правильно писать, а не деньги тратить! С этим трудно спорить, но остается проблема обеспечить процесс правильного написания программ. И тут правильный выбор языка бесспорно играет роль. > Ну и в таком духе... Если бы была возможность попробовать хотя бы триальную версию на 1-3 месяца, я бы мог что-то более внятное произнести в кабинете с высоким потолком... :-) Ну, а за чем же дело встало? Ведь мы предоставляем трехмесячный испытательный срок. Причем не только для испытания самого компилятора, но и испытания услуг техподдержки. Понятное дело, что это можно сделать только для уже существующего порта, но как я уже сказал на мой взгляд вам пока важнее убедиться, что генерируется адекватный код, а не что среда комфортная, последнее можно перенести на более поздний срок. Тем более, что GPS например вполне поддерживает среду разработки на одной машине, а среду сборки на другой, так что я даже не уверен, что проблема так уж остра. Вобщем, обращайтесь :)
> Пытался... :-( Ответ: "Напишите нам, что Вам нужно и мы выставим счёт, Тут верно... > после оплаты которого..." ...но вот тут уже нет, правильнее будет "после подтверждения принципиальной приемлемости которого..." Вобщем короче говоря, позиция ни в коем случае не "платите, а там посмотрим", если сложилось такое впечатление - то видимо произошло искажение информации.
On 11/18/2014 07:00 PM, Сергей Ларионов sv_lary@... [ada_ru] wrote: > > >Для OpenSUSE например есть дополнительный репозиторий предоставляющий > готовые кросс компиляторы > > для многих платформ > Очень интересно! У меня сейчас ка раз OpenSUSE ! Не подскажете - где > искать эти доп. репозитарии ? > У меня значится такой репозиторий: http://download.opensuse.org/repositories/devel:/gcc/openSUSE_13.1/
Здравствуйте, Вадим ! Чтв 20 Ноя 2014 13:25:10 +0600, Vadim Godunko vgodunko@... [ada ru] <ada [email protected]> написал: > У меня значится такой репозиторий: > > http://download.opensuse.org/repositories/devel:/gcc/openSUSE 13.1/ Большое спасибо за ответ! Но там не так-то просто разобраться.... Я скачал пакет cross-ppc-gcc48-icecream-backend-4.8.3+r212056-135.1.x86 64.rpm. Если я правильно понимаю, то: - Инструментальная машина - x86 64 - Целевая машина - ppc Но вот что написано в INFO этого пакета: "The GNU C Compiler and Support Files" Т.е. только С и ничего больше. А вот что написано в HEADER: Language frontends other than C are split to different sub-packages, namely gcc-ada, gcc-c++, gcc-fortran, gcc-java, gcc-objc and gcc-obj-c++. Посмотрев эти самые different sub-packages я нашёл только gcc48-ada-32bit-4.8.3+r212056-135.1.x86 64.rpm который у меня и так установлен. И это - вовсе не кросс! Может я чего-то не понимаю ? -- Всего хорошего! Сергей Ларионов
Здравствуйте, Василий ! Втр 18 Ноя 2014 23:41:18 +0600, Fofanov Vasiliy fofanov@... [ada ru] <ada [email protected]> написал: > если сложилось такое впечатление - то видимо произошло искажение информации. Ну, разговор этот был года три назад и вёлся он по английски, так что вполне может быть, что я чего-то не допонял... Однозначно, там было что-то о том, что заполните форму и мы рассчитаем стоимость... Это меня сразу напрягло. :-) -- Всего хорошего! Сергей Ларионов
> Ну, разговор этот был года три назад и вёлся он по английски, так что вполне может быть, что я чего-то не допонял... > Однозначно, там было что-то о том, что заполните форму и мы рассчитаем стоимость... > > Это меня сразу напрягло. :-) Сергей, ну мы же не в рассказе Х.Ребане "Пустые ценники" в самом деле, где узнавание цены автоматически означало покупку вещи :) Нам просто для открытия испытательного срока надо знать, что вы, обращаясь к нам, настроены серьезно, и у вас есть конкретный индустриальный проект. Вовсе не все, кто к нам обращается, после испытательного срока оформляет заказ. ВФ
Здравствуйте, Василий ! Втр 18 Ноя 2014 23:36:23 +0600, Fofanov Vasiliy fofanov@... [ada ru] <ada [email protected]> написал: > ГОСТ 27831-88, который имеет действующий статус. Посмотрел. Круто! Это будет серьёзным доводом. > воспользовавшись уже существующими сборками для x86-linux и/или ppc-linux. Мне нужен код именно для РРС. Так как девайсы, которые мы делаем (http://www.micran.ru/productions/mobile/) используют именно РРС. Если будет реально работающий кросс-компиллятор (+библиотеки), то я согласен текст набирать в VI :-) Или, хотя бы компиллятор, работающий на РРС и генерирующий код для неё же. Хотя это значительно менее удобно. > Ведь мы предоставляем трехмесячный испытательный срок. Что я должен для этого сделать ? > на мой взгляд вам пока важнее убедиться, что генерируется адекватный код, а не что среда комфортная, Совершенно верно! -- Всего хорошего! Сергей Ларионов
Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти