QNX RTP Logo QNX Realtime Platform: Русский Портал QNX
Friday, 21 Nov 2008 09:13
Меню

Проект OpenNET - все о Unix
Главная

 · Начало · Статистика · Поиск ·

  QNX.ORG.RU —› Языки и алгоритмы —› ADA и QNX

<< . 1 . 2 . 3 . 4 . 5 . 6 . >>

Посл.ответ Сообщение


Дата: 5 Июл,  13:01

Пробовал прикрутить адский компилер к gcc-2.95.2.
Копилирует, но не линкует.

P.S. Может остальные бинарники тоже выложить?
А то, наверное, не у всех есть желание пару ночей угарать сборкой
Я сделал архив (в bz2 формате). В него я запихал каталог
/usr/local/lib/ со всем его содержимым (там у меня кроме вещей
относящихся к gcc ничего и не было), а в каталог bin -
утилиты: cpp, gcov (вроде тоже от gcc ???), gnatlink, gnatmake, ...
Если это не все, что нужно для полного счастья - подскажите кто знает,
а то я че-то заблудился в файловой системе слегонца .
Весит этот архивчик 4849370 байт. [addsig]


Дата: 5 Июл,  13:59



В свете вышесказанного, мне хотелось бы узнать:

1. Можно ли включить портированную версию в сборник?

2. Если можно, то как добраться до неё в виде UNIX-style архива?

Содержимое архива - это не полная портированная версия, а лишь
инструменты для ее сборки (gnat1, gnatbind, драйвер i386-pc-nto-qnx-gcc). [addsig]


Дата: 5 Июл,  19:16


myst пишет:
P.S. Может остальные бинарники тоже выложить?
А то, наверное, не у всех есть желание пару ночей угарать сборкой
Я сделал архив (в bz2 формате). В него я запихал каталог
/usr/local/lib/ со всем его содержимым (там у меня кроме вещей
относящихся к gcc ничего и не было), а в каталог bin -
утилиты: cpp, gcov (вроде тоже от gcc ???), gnatlink, gnatmake, ...
Если это не все, что нужно для полного счастья - подскажите кто знает,
а то я че-то заблудился в файловой системе слегонца .
Весит этот архивчик 4849370 байт.

1.Я думал по этому тексту, что там лежит этот архивчик bz2 в проекте ftp://ftp.qnx.org.ru/pub/projects/myst/testing/ (я так прямолинейно понимаю термин "сделал" ), а там всё тот же gcc-3.1-qnx-files.rar
2.А почему там сборки так надолго?
3.Если мы начнём с этим ковыряться (т.е. проект это как-то называется) - то, наверное, результирующие бинарники при модификациях надо будет оставлять - только strip-ованные.


Дата: 5 Июл,  23:37


cs994 пишет:
Dear sirs!

В недрах FIDO образовалось то, что мы гордо называем Ru.Ada.Community. !) И мы сделали сборник материалов по Ada'е на CD. В него входят: документация, русский FAQ, библиотеки и, естественно, компиляторы для разных платформ. Обновлением и рассылкой этого диска ( по себестоимости ), который мы называем "сборник Васильченко" по имени составителя или Ru.Ada.Community
CD ROM


1) Сборник пора обновить.
2) А не много ли чести господину Васильченко ?
3) Предлагаю переименовать сборник в Ru.Ada.Community CD-ROM

P.S:
Все желающие могут читать SU.PASCAL.MODULA.ADA в режиме
read-only на http://www.fido-online.com после предварительной
бесплатной регистрации или на http://www.talk.tu (искать
конфернцию su.pascal.modula.ada) [addsig]


Дата: 6 Июл,  21:38


myst пишет:


В свете вышесказанного, мне хотелось бы узнать:

1. Можно ли включить портированную версию в сборник?

2. Если можно, то как добраться до неё в виде UNIX-style архива?

Содержимое архива - это не полная портированная версия, а лишь
инструменты для ее сборки (gnat1, gnatbind, драйвер i386-pc-nto-qnx-gcc).


Привет myst. Я долго пытаюсь что нибудь сделать на основе твоего архива,
но ничего не получается. Может скажи что нибуть больше как ты получил эти бинарики - gnat1, gnatbind. Или вылажи болше.
К стати можеть ктото скомпилировал SWI-Prolog ?
Я бес проблем портировал GNU Prolog version 1.2.13/14.
Можеть кого то интересуеть.


Дата: 6 Июл,  23:46


bbceler пишет:
Привет myst. Я долго пытаюсь что нибудь сделать на основе твоего архива,
но ничего не получается. Может скажи что нибуть больше как ты получил эти бинарики - gnat1, gnatbind. Или вылажи болше.
К стати можеть ктото скомпилировал SWI-Prolog ?
Я бес проблем портировал GNU Prolog version 1.2.13/14.
Можеть кого то интересуеть.


Ты исходники gcc-3.1 с gcc.gnu.org скачал? Если нет, качай
Надо не все, а тока gcc-core-3.1.tar.bz2 и gcc-ada-3.1.tar.bz2
Первый размером 10560577 байт, второй - 3051029 байт. Итого
13 с копейками метров. После скачивания исходников распаковываешь
их в какой нибудь каталог, например в /usr/src/gcc-3.1, копируешь
с заменой папку gcc из архива в этот каталог. Дальше по инструкции.
Только есть один нюанс: все иходники могут компилироваться
родным къюниксовским gcc-2.95.2, кроме адской части (они написаны на аде).
Вот здесь и нужны те бинарники, которые и находятся в архиве.
Чтобы скомпилить адскую часть нужно поправить ada/Makefile в
сконфигурированном gcc, например, у меня полный путь
/usr/gcc-3.1/gcc/ada/Makefile. В это файле найди место:

# Let the configure setting prevail only if CC hasn't been overridden
# to xgcc by the top level Makefile (in a later stage of bootstrap).
ifeq ($(findstring xgcc, $(CC)),)
ADAC = gcc
else
ADAC = $(CC)
endif

Замени это на ADAC = i386-pc-nto-qnx-gcc -Bпапка_где_лежит_gnat1

i386-pc-nto-qnx-gcc и gnatbind можно положить например в /usr/local/bin
или в любой другой каталог (лишь бы был в PATH прописан, а то make не
найдет эти программы).

Должно сработать.

Правда есть странное обстаятельство: вторая стадия bootstrap'а бывает
обламывается, с какими-то дикими сообщениями об ошибках. Решение -
компилировать адские исходники без отладочной инфы (самое смешное
не компилятся только два пакета). Для этого я убрал все ключи -g из
Makefile.

P. S. Команда конфигурации:
./configure --enable-threads=posix --enable-languages=ada,c [addsig]


Дата: 7 Июл,  17:33


myst пишет:

Olej пишет:
А интересно, пока пусть очень предварительно: а есть ли возможность как-то определить (pragma какие?) соглашения об external именах с тем, чтоб определить совместимость и линковку с библиотеками C/C++, а конкретно - перспективы подлинковки библиотек Photon?

Я знаю только три директивы по этому поводу:
(скпопировал из RM95)

pragma Convention([Convention =>] convention_identifier, [Entity =>] local_name);

pragma Import([Convention =>] convention_identifier, [Entity =>] local_name
[,[External_Name =>] string_expression] [, [Link_Name =>] string_expression]);


pragma Export([Convention =>] convention_identifier, [Entity =>] local_name
[,[External_Name =>] string_expression] [, [Link_Name =>] string_expression]);

Convention - имя языка, чьи соглашения будут использоваться;
Entity - имя объекта, для которого применяется директива;

External_Name - a string value for the name used by a foreign
language program either for an entity that an Ada program imports, or for referring
to an entity that an Ada program exports.

Link_Name - a string value for the name of an exported or imported entity, based on
the conventions of the foreign language’s compiler in interfacing with the
system’s linker tool.

Еще есть директива для указания опций линкера:
pragma Linker_Options(string_expression);



Хочу заметить следующее, GNAT является 32bit'ным компилятором,
а так как QNX (если мне не изменяет память) может выполнять как
16bit так 32bit то в случае 16bit можно крепко наступить на грабли. Кстати, 3soft которые специализируются на создании софта
для real-time/embedded для автомобильной индустрии именно из-за
32bit'ности GNAT'а отказались от его использования. На данный момент в ходу железяки с 8bit и 16bit и софт пишется в основном на специально заточенном под embedded C [addsig]


Дата: 7 Июл,  20:31



Хочу заметить следующее, GNAT является 32bit'ным компилятором,
а так как QNX (если мне не изменяет память) может выполнять как
16bit так 32bit то в случае 16bit можно крепко наступить на грабли. Кстати, 3soft которые специализируются на создании софта
для real-time/embedded для автомобильной индустрии именно из-за
32bit'ности GNAT'а отказались от его использования. На данный момент в ходу железяки с 8bit и 16bit и софт пишется в основном на специально заточенном под embedded C



QNX Neutrino, которая, в основном, обсуждается на этом форуме и для которой я собирал компилер
чисто 32-х разрядная. [addsig]


Дата: 9 Июл,  15:17

кстати а что это за модули в ..gccada5x ? Их нет
в дистрибутиве.



Дата: 9 Июл,  21:40


wind_alex пишет:
кстати а что это за модули в ..gccada5x ? Их нет
в дистрибутиве.



Это модули платформно-зависимые модули для QNX. Смело копируй
их в дистрибутив [addsig]


Дата: 10 Июл,  19:49


Привет myst. Спасиба. Я сделал как ты написал. Все идет хорошо до момента когда строится gnat1. Я получаю сообщениями об ошибках типа:
a-except.o(.debug+0x4e41): undefined reference to `L_T787'
a-except.o(.debug+0x4f95): undefined reference to `L_T794'
a-except.o(.debug+0x5166): undefined reference to `L_E971'
ali.o: In function `ali__shash':
ali.adb:543: undefined reference to `L_E1631'
Не знаеш что это обозначаеть ?.
К стати в xm-nto.h есть:
#include "i386/xm-i386.h"
#include "xm-svr4.h"
но этих файлов нет.


Дата: 10 Июл,  21:52


Привет myst. Спасиба. Я сделал как ты написал. Все идет хорошо до момента когда строится gnat1. Я получаю сообщениями об ошибках типа:
a-except.o(.debug+0x4e41): undefined reference to `L_T787'
a-except.o(.debug+0x4f95): undefined reference to `L_T794'
a-except.o(.debug+0x5166): undefined reference to `L_E971'
ali.o: In function `ali__shash':
ali.adb:543: undefined reference to `L_E1631'
Не знаеш что это обозначаеть ?.


У меня эта ботва тоже была. Причина, похоже, в том, что часть линкуемых
объектников скомпилена с отладочной инфой, а часть нет. Еще раз проверь
адский Makefile на наличие ключей -g. Кстати во время сборки он иногда
пересоздается заново. Так что, чтобы гимора было меньше, лучше эти ключи
удалить из ada/Makefile.in (оригинал лучше тоже сохранить ), что в
дистрибутиве. Удали все объектники в адской папке и попробуй заново.
В принципе, если эти ключи вообще не трогать, у меня собиралась
первая стадия, а вот вторая уже нет. Может этого и достаточно ???

Кстати, когда соберешь компилер, надо будет адскую библу собрать и
вспомогательные инструменты:
cd $objdir/gcc # папка gcc в каталоге сборки
make gnatlib_and_tools


К стати в xm-nto.h есть:
#include "i386/xm-i386.h"
#include "xm-svr4.h"
но этих файлов нет.


Я чувтсвовал, что чего-то забыл Намыль мне myst_oasu@mail.ru, пришлю.
Хотя если ты дошел до фазы линковки gnat1, значит CC1 в папке gcc уже
собран. Тогда возможно эти файлы и ненужны. Попробуй без них, если че
пиши. [addsig]


Дата: 12 Июл,  14:32

Привет myst. Я получил новый gnat1. Он очень болшой. Но далше все обрывается.
Апять ошибки. Этот gnat1 это окончательный резултат ? Или нада бороться далше. А как ты собрал этот первый gnat1 ?


К стати в xm-nto.h есть:
#include "i386/xm-i386.h"
#include "xm-svr4.h"
но этих файлов нет.


Я делал без них.



Дата: 12 Июл,  19:40


Привет myst. Я получил новый gnat1. Он очень болшой. Но далше все обрывается.
Апять ошибки. Этот gnat1 это окончательный резултат ?

Привет.
Все зависит от того, работает ли он. У меня бывало получался нерабочим.
Проверить можно так:
test.adb:
procedure test is
a : Integer;
begin
a := 1 + 3;
end test;
компилируешь:
cd $objdir/gcc
xgcc -B. -c test.adb
Если не невылетит с воплями "core dump" или "floating point exception"
или "internal compiler error" с адресами куда слать инфу об ошибке или
че-нибудь в этом духе, то значит gnat1 рабочий. И, в принципе, я думаю
дальше можно сам компилер не собирать и попробовать собрать либу и
инструменты.
Размер gnat1 после сборки действительно большой под 15 мегов тянет.
Это нормально. Его потом можно будет strip'ом обкусать.
Насчет дальнейших ошибок. Я бы хотел на них взглянуть.

P.S. Можешь мылить (myst_oasu@mail.ru) мне напрямую. Эта тема на
форуме все равно завяла кроме тебя и меня ее никто не поддерживает . [addsig]


Дата: 15 Июл,  20:17


P.S. Можешь мылить (myst_oasu@mail.ru) мне напрямую. Эта тема на
форуме все равно завяла кроме тебя и меня ее никто не поддерживает .


Ошибаетесь батенька, я переодически просматриваю. Вот как будет прецедент
сборки данного хозяйства 3 разными людьми, тогда я тоже подключусь [addsig]


Дата: 16 Июл,  02:21


mrbool пишет:

Ошибаетесь батенька, я переодически просматриваю. Вот как будет прецедент
сборки данного хозяйства 3 разными людьми, тогда я тоже подключусь


Я давно предлагал выложить полные бинарники на ftp, письмо dmi катал по этому
поводу. Ноль эмоций Зачем собирать, париться, когда все собрано. Тестировать надо!
[addsig]


Дата: 18 Июл,  16:57


myst пишет:

mrbool пишет:
Ошибаетесь батенька, я переодически просматриваю. Вот как будет прецедент
сборки данного хозяйства 3 разными людьми, тогда я тоже подключусь

Я давно предлагал выложить полные бинарники на ftp, письмо dmi катал по этому поводу. Ноль эмоций Зачем собирать, париться, когда все собрано. Тестировать надо!

Я просматриваю регулярно, и уверен - что ещё много народу. Никто тему не прекращал. Но пока оно сырое - крутитесь сами. Я рассчитываю, что когда сборка будет понятна и безошибочна, то сырцы, или может кто пакет *.qpr спромогнётся собрать - выложите на ftp, и с детальными комментариями как это всё делать - некогда всем время терять одно и то-же повторять.

dmi сейчас по лесам бегает ... лето, батенька. А как вернётся - я уверен, что будет создан упорядоченный проект. И спешить здесь особенно некуда - смысл не в том, чтоб gnat собрать, фиг с ним, с gnat-ом, а чтобы ADA в приложениях использовать, или как это правильнее: чтоб на ADA приложения лепить. А вот там только и начнётся ... на год разборок хватит...


Дата: 18 Июл,  18:21

Olej абсолютно прав - нечего всем возиться со сборкой - есть несколько человек кто в этом уже подразобрался и будет очень любезно с их стороны если они и доведут эту часть до стабильного состояния - я имею в виду "собираемость" не от случая к случаю, а стабильно . А как только можно будет нормально установиться и пробовать собственно ADA, то...


Дата: 27 Июл,  14:32


myst пишет:

mrbool пишет:

Ошибаетесь батенька, я переодически просматриваю. Вот как будет прецедент
сборки данного хозяйства 3 разными людьми, тогда я тоже подключусь


Я давно предлагал выложить полные бинарники на ftp, письмо dmi катал по этому
поводу. Ноль эмоций Зачем собирать, париться, когда все собрано. Тестировать надо!



Кстати, вышел 3.1.1 Unofficial release. Может подождем release ? [addsig]


Дата: 27 Июл,  21:20


mrbool пишет:

Кстати, вышел 3.1.1 Unofficial release. Может подождем release ?



По-моему уже есть релиз 3.1.1 (bugfix). Во freebsd ports collection вчера появился gcc 3.3 (версия для разработчиков).

Говорил с разработчиками из qssl по поводу порта gcc 3.1 для qnx. Они сказали, что пока что забросили эту идею.

Файлы, полученные от myst выложил на ftp:
ftp://ftp.qnx.org.ru/pub/projects/myst/testing/




Дата: 27 Июл,  21:20


mrbool пишет:

Кстати, вышел 3.1.1 Unofficial release. Может подождем release ?



По-моему уже есть релиз 3.1.1 (bugfix). Во freebsd ports collection вчера появился gcc 3.3 (версия для разработчиков).

Говорил с разработчиками из qssl по поводу порта gcc 3.1 для qnx. Они сказали, что пока что забросили эту идею.

Файлы, полученные от myst выложил на ftp:
ftp://ftp.qnx.org.ru/pub/projects/myst/testing/




Дата: 31 Июл,  18:02



---Говорил с разработчиками из qssl по поводу порта gcc 3.1 для qnx. Они ---сказали, что пока что забросили эту идею.
Привет, ты бы мог что то больше написать почему ?
bogdan.


Дата: 1 Авг,  11:21

Тут я смотрю развиваются тенденции ADA == панацея Есть ли статистика об успешном использовании ADA ? Я не имею в виду решения вроде "написал для себя и горжусь этим по гроб жизни" а реальном настоящем использовании. Также интересует стыковка объектников ADA и C/C++ особенно C++. Потому как на сегодняшний день мы все настолько погрузли в C/C++ и в платформу x86, что выбраться от туда уже просто нереально (да и не хочеться ) Как быть со всеми сегодняшними наработками, миллионами библиотек и т.п. решениями. Или все будет переписываться заново ? На сколько я понимаю тенденции развития GNU Compiler Set плюшки в виде ObjectiveC/Pascal/Fortran/ADA туда добавляют только лишь для того, чтобы переманить к себе побольше людей в OpenSource и перенесения старых проектов но никак ни для написания серьезных новых вещей ...


Дата: 1 Авг,  16:20


lestat пишет:
Есть ли статистика об успешном использовании ADA ?

Статистики нет. А вот успешно заверщённые и весьма крупные проекты - есть, т.к. ADA - официальный язык новых разработок аэрокосмических и военно-воздушных ведомств министерства обороны США. Об них сообщалось, но детали, естественно, не описывались. Это, естественно, не означает, что относится "нашим" семействам процессоров, или ADA в реализации GNAT (я не знаю), хотя и инициатор и основной "движитель" проекта GNAT - это одна из военно-воздушных академий US (не помню какая, но легко пойти по URL и посмотреть).

Также интересует стыковка объектников ADA и C/C++ особенно C++. Потому как на сегодняшний день мы все настолько погрузли в C/C++ и в платформу x86, что выбраться от туда уже просто нереально (да и не хочеться ) Как быть со всеми сегодняшними наработками, миллионами библиотек и т.п. решениями. Или все будет переписываться заново ?

Нет, не переписываться, а прилинковываться. А до тех пор, пока не будет такой совместимости, ни о каком проекте ADA говорить не приходится.


Дата: 1 Авг,  17:00


lestat пишет:
Тут я смотрю развиваются тенденции ADA == панацея
=========
откуда у тебя такая мысль ?
=========
Есть ли статистика об успешном использовании ADA ? Я не имею в виду решения вроде "написал для себя и горжусь этим по гроб жизни" а реальном настоящем использовании.
=========
Я не спецялист по ADA, но посмотри на http://www.gnat.com/, и выбери CUSTOMERS.
=========
Также интересует стыковка объектников ADA и C/C++ особенно C++. Потому как на сегодняшний день мы все настолько погрузли в C/C++ и в платформу x86, что выбраться от туда уже просто нереально (да и не хочеться ) Как быть со всеми сегодняшними наработками, миллионами библиотек и т.п. решениями. Или все будет переписываться заново ? На сколько я понимаю тенденции развития GNU Compiler Set плюшки в виде ObjectiveC/Pascal/Fortran/ADA туда добавляют только лишь для того, чтобы переманить к себе побольше людей в OpenSource и перенесения старых проектов но никак ни для написания серьезных новых вещей ...

А на счеть погрузки в C/C++, то могу тебе сказать, что когда я начял заниматся нформатикой то таких компютеров как тот на котором ты писал свою заметку не было. Первый язык на котором я начал писать это Algol 68. А потом пошли - Fortran, Cobol, Pascal. До C и не говоря об C++ было еще далеко. А сколько библиотек в них создано ... Так что я думаю C/C++ это не конец. Я конешно не утверждаю что ADA это решение всех проблем и единственный верный путь. Но это очень интересный язык программированя, и стоит с ним хотябы познокомится. Он очень интересный с точки зреня проектирования систем.
Попробуй просмотреть книгу Р. Бар Язык Ада в проектировании систем. У меня есть издание с 1988 г. Она основана на ADA 83 a gnat это Ada 95.
Какое будет будуще этого никто не знаеть. Но увидиш черес год или два .. серьезные новые вещи ... будем писать не на C/C++ а на чем то другом.
Поздравляю,
bogdan.


Дата: 1 Авг,  18:14

По поводу Ада и С++ могу порекомендовать GNAT User's Guide, там есть целая глава
посвященная этой теме. [addsig]


Дата: 1 Авг,  18:46


myst пишет:
По поводу Ада и С++ могу порекомендовать GNAT User's Guide, там есть целая глава посвященная этой теме.

"Порекомендовать" - это дать URL?


Дата: 1 Авг,  19:38


bbceler пишет:
... Первый язык на котором я начал писать это Algol 68. ...



Простите bogdan за нескромный вопрос: где и в какой среде это было?


Дата: 1 Авг,  20:35


Evgeniy пишет:

bbceler пишет:
... Первый язык на котором я начал писать это Algol 68. ...



Простите bogdan за нескромный вопрос: где и в какой среде это было?

Это было в 1971/72 году. Я тогда был студентом пепвого года Варшавского Университета. В те времена в эвропе на университетах Algol 68 был гороздо более популарен чем Fortran или PL1. Какая это была эвм то извини не помню.


Дата: 1 Авг,  20:47


bbceler пишет:

Evgeniy пишет:

bbceler пишет:
... Первый язык на котором я начал писать это Algol 68. ...



Простите bogdan за нескромный вопрос: где и в какой среде это было?

Это было в 1971/72 году. Я тогда был студентом пепвого года Варшавского Университета. В те времена в эвропе на университетах Algol 68 был гороздо более популарен чем Fortran или PL1. Какая это была эвм то извини не помню.


Большое спасибо!

<< . 1 . 2 . 3 . 4 . 5 . 6 . >>

You must login to post.

©   2000-2003 Команда проекта QNX.ORG.RU // QNX.ORG.RU Team
Авторы проекта: Дмитрий Алексеев [dmi] и Дмитрий Васильев. Техническое сопровождение проекта: Игорь Сорокин [isorokin]. Информационное сопровождение: Дмитрий Алексеев [dmi]
QNX - зарегистрированная торговая марка QNX Software Systems, Ltd., Canada. Остальные упоминаемые на сайте торговые марки и логотипы являются исключительно собственностью их уважаемых владельцев. Ничьи права не затронуты. Материалы сайта не могут быть скопированы и где-либо использованы в той или иной форме без письменного разрешения разработчиков сайта.
Powered by Mambo Open Source