Ada_Ru форум

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

Re: [ada_ru] Troubles with Linux :(

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

Сообщения

Victor Olegovich
Re: [ada_ru] Troubles with Linux :(
2010-08-18 17:37:32

 

 

--- On Wed, 8/18/10, Dmitry A. Kazakov <alt@...> wrote:

 

From: Dmitry A. Kazakov <alt@...>

Subject: Re: [ada_ru] Troubles with Linux :(

To: ada_ru@yahoogroups.com

Date: Wednesday, August 18, 2010, 9:24 AM

 

On Wed, 18 Aug 2010 07:03:27 -0700 (PDT), you wrote:

 

Эта запись в файле проекта пояывилась.

> Тест (вроде хэлло-уорд) редактируется, компилируется с созданием ali, но линкёром не обслуживается (сообщения воспроизведены в прилагаемом файле)

 

Где он?-- :(-- Сильно извиняюсь, сам заметил, что забыл буквально только что...-- Но теперь здесь

 

Вообще, общее правило gpr-файлы надо редактировать только руками. GPS многим хорош, но только не редактором проектов.-- Согласен, но, чем она ни плоха, а под Виндовс можно и из среды: за последние пару лет я не помню, чтоб там у меня или студентов возникали такие странности, которые я уже успел понаблюдать при формировании gpr вФедоре, даже не собрав ни одной еще программы :((!-- Спасибо за реакцию на мою просьбу,-- Виктор

 

Все что нужно для Hello World:

---------- test.gpr:

project Test is

   for Main use ("test.adb");

end Test;

--------- test.adb:

with Ada.Text_IO;  use Ada.Text_IO;

procedure Test is

begin

   Put_Line ("Hello World!");

end Test;

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

------------------------------------

 

Yahoo! Groups Links

 

 

 

 

 

 

On 08/18/2010 09:37 PM, Victor Olegovich wrote:

 

[Attachment(s) <#TopText> from Victor Olegovich included below]

 

Про GPS нужно спрашивать отцов-основателей.

 

А причина ошибки компиляции тривиальна - не установлены системные пакеты разработки. Файл crt1.o есть часть системной библиотеки,

предположительно glibc. Скорее всего в системе не установлен пакет glibc-devel или что-то аналогичное.

On Wed, 18 Aug 2010 10:37:32 -0700 (PDT), you wrote:

 

Где он?-- :(-- Сильно извиняюсь, сам заметил, что забыл буквально только что...-- Но теперь здесь

 

Что-то с путями. Что говорит:

 

gnatmake test.adb

 

А Федора gnat стоит? Что говорит

 

rpm -q -a | grep gnat

 

Они разные, и друг друга не любят.

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

--- On Wed, 8/18/10, Dmitry A. Kazakov <alt@...> wrote:

 

From: Dmitry A. Kazakov <alt@...>

Subject: Re: [ada_ru] Troubles with Linux :(

To: ada_ru@yahoogroups.com

Date: Wednesday, August 18, 2010, 11:10 AM

 

On Wed, 18 Aug 2010 10:37:32 -0700 (PDT), you wrote:

 

Где он?-- :(-- Сильно извиняюсь, сам заметил, что забыл буквально только что...-- Но теперь здесь

 

Что-то с путями. -- Это было первое, что подумалось. На всякий случай переставил путь к установленному gnat-у из конца в начало строки PATH - никакого эффектаЧто говорит:

 

gnatmake test.adb-- говорит, что команды такой нету. Возможно, к нему прописанный абсолютный путь не нужен, а вызывается GPS-ом по относительным путям?

 

А Федора gnat стоит?-- Визуально не нашелЧто говорит

 

rpm -q -a -- перечисляет файлы. Большинство кончается на .686i, а начинается с таких имен, как gnome, pyton и самых разных, подчас не знакомых, не по алфавиту. Ничего "гнатского" не видать. Впрочем, терминал зашкалило, первые потерялись| grep gnatчего-то молча выполняет или, скорее, ждёт. На отфонарный ввод кушает и снова ждёт. Снял по контрол-зет

 

Они разные, и друг друга не любят.-- О таких вещах наслышан. Потому и пытался в первую очередь повлиять на порядок поиска-- Спасибо. Не пора ли  по совету Вадима к "отцам -основателям"?-- Виктор

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

------------------------------------

 

Yahoo! Groups Links

 

 

 

 

 

 

 

 

--- On Wed, 8/18/10, Victor Olegovich <victor_olegovich@...> wrote:

From: Victor Olegovich <victor_olegovich@...>

Subject: Re: [ada_ru] Troubles with Linux :(

To: ada_ru@yahoogroups.com

Date: Wednesday, August 18, 2010, 12:03 PM

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

--- On Wed, 8/18/10, Dmitry A. Kazakov <alt@...> wrote:

 

From: Dmitry A. Kazakov <alt@...>

Subject: Re: [ada_ru] Troubles with Linux :(

To: ada_ru@yahoogroups.com

Date: Wednesday, August 18, 2010, 11:10 AM

 

On Wed, 18 Aug 2010 10:37:32 -0700 (PDT), you wrote:

 

Где он?-- :(-- Сильно извиняюсь, сам заметил, что забыл буквально только что...-- Но теперь здесь

 

Что-то с путями. -- Это было первое, что подумалось. На всякий случай переставил путь к

установленному gnat-у из конца в начало строки PATH - никакого эффектаЧто говорит:

 

gnatmake test.adb-- говорит, что команды такой нету. Возможно, к нему прописанный абсолютный путь не нужен, а вызывается GPS-ом по относительным путям?============================ Тут я в предыдущем письме ошибся . Почему-то восстановилась старая строка PATH, а я не заметил. Отсюда и команда была не распознана!== На самом деле вызов gnatmake с указанием пути к test.adb имеет почти тот же эффект, что по команде сборки из оболочки GPS. По той же цепочке вызываются программы (немного с другими ключами) и с тем же окончательным эффектом: линкер не находит файл crt1.o и

 следует отказ.==========================

 

А Федора gnat стоит?-- Визуально не нашелЧто говорит

 

rpm -q -a -- перечисляет файлы.

Большинство кончается на .686i, а начинается с таких имен, как gnome, pyton и самых разных, подчас не знакомых, не по алфавиту. Ничего "гнатского" не видать. Впрочем, терминал зашкалило, первые потерялись| grep gnatчего-то молча выполняет или, скорее, ждёт. На отфонарный ввод кушает и снова ждёт. Снял по контрол-зет

 

Они разные, и друг друга не любят.-- О таких вещах наслышан. Потому и пытался в первую очередь

повлиять на порядок поиска-- Спасибо. Не пора ли  по совету Вадима к "отцам -основателям"?-- Виктор

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

------------------------------------

 

Yahoo! Groups Links

 

required)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

On Wed, 18 Aug 2010 13:06:13 -0700 (PDT), you wrote:

 

gnatmake test.adb-- говорит, что команды такой нету.

 

В PATH должен быть /usr/gnat/bin, там он лежит (если от GNAT GPL).

На самом деле вызов gnatmake с указанием пути к test.adb имеет почти тот же эффект, что по команде сборки из оболочки GPS.

 

Т.е. GPS не при чем. Сломан компилятор, не правильно установлен.

 

А Федора gnat стоит?-- Визуально не нашелЧто говорит

 

rpm -q -a -- перечисляет файлы.

 

Все пакеты, надо:

 

$ rpm -q -a | grep gnat

gcc-gnat-4.4.4-10.fc13.i686

libgnat-devel-4.4.4-10.fc13.i686

fedora-gnat-project-common-1.2-1.fc13.noarch

libgnat-4.4.4-10.fc13.i686

- т.е. установлен

 

Далее родной gcc:

 

$/usr/bin/gcc -v

Using built-in specs.

Target: i686-redhat-linux

Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix

--enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object

--enable-languages=c,c++,objc,obj-c++,java,fortran,ada

--enable-java-awt=gtk --disable-dssi

--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre

--enable-libgcj-multifile --enable-java-maintainer-mode

--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch=i686

--build=i686-redhat-linux

Thread model: posix

gcc version 4.4.4 20100630 (Red Hat 4.4.4-10) (GCC)

 

Неродной gcc из GNAT GPL:

 

$/usr/gnat/bin/gcc -v

Using built-in specs.

Target: i686-pc-linux-gnu

Configured with: ../src/configure --prefix=/usr/gnat

--with-build-time-tools=/cardhu.b/gnatmail/release-gpl/build-cardhu/obj --with-gmp=/cardhu.b/gnatmail/release-gpl/build-cardhu/libmpfr/install --with-mpfr=/cardhu.b/gnatmail/release-gpl/build-cardhu/libmpfr/install --build=i686-pc-linux-gnu --enable-languages=c,ada,c++ --disable-nls --without-libiconv-prefix --disable-libmudflap --disable-libffi

--disable-libstdcxx-pch --disable-libada --enable-checking=release --enable-__cxa_atexit --enable-threads=posix

--with-bugurl=URL:mailto:report@adacore.com

Thread model: posix

gcc version 4.3.6 20100603 for GNAT GPL 2010 (20100603) (GCC)

 

Впрочем, это не важно. Это какие-то внутренние дела в gcc. У меня раз такое было после upgrade с одного gcc на другой (4.2 на 4.3, по-моему). Вместо того, чтобы разбираться, мне было проще переустановить Федора.

 

Кстати, не надо устанавливать gcc-gnat самого Федора - он гнилой, хоть и 4.4.4, если все равно собираетесь пользоваться GNAT GPL (4.3.6).

Не пора ли  по совету Вадима к "отцам -основателям"?

 

Нет, это не их ошибка. У Вас два разных компилятора gcc, куски одного лезут в другой. Грамотно их развести можно, и обычно они мирно сосуществуют, но при появлении проблем, требует копания gcc-х делах.

 

Тоже, судя по-всему, и с GTK те же дела, т.к. GPS ругается на библиотеки, а не должен. (GTK тоже два один из Федора и GNOME, другой из GNAT GPL).

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

On 08/18/2010 10:10 PM, Dmitry A. Kazakov wrote:

 

Они разные, и друг друга не любят.

 

Ребята, давайте жить дружно!

 

Вывод был такой:

 

gnatmake -d -P/home/Vic/Ada/first.gpr

gnatbind -I- -x /home/Vic/Ada/test.ali

gnatlink /home/Vic/Ada/test.ali -o /home/Vic/Ada/test

/usr/gnat/libexec/gcc/i686-pc-linux-gnu/4.3.6/ld: crt1.o: No such file: No such file or directory

collect2: ld returned 1 exit status

gnatlink: error when calling /usr/gnat/bin/gcc

gnatmake: *** link failed.

 

Теперь анализируем. gnatmake, gnatbind, gnatlink - стоят. Какой ld запускает gnatlink? Правильно, из собственных потрохов, /usr/gnat/... Значит GNAT от AdaCore, иначе бы вызывался системный, /usr/bin/ld. По пути отмечаем, что используется архитектура i686-pc-linux-gnu.

 

Идём дальше. Что он не находит? А не находит он файл crt1.o, который есть стартовая часть приложения со стороны стандартной системной

библиотеки C. (Да есть ещё crt0.o, это стартовый файл со стороны

компилятора.) Простым смертным он не нужен, ибо статически влинкован в любое приложение. А непростые смертные программисты имеют установленными -devel пакеты. Открываю свой OpenSUSE и ищу... Пакет glibc-devel, полный путь файла /usr/lib64/crt1.o. Ага! lib64! Значит он зависит ещё и от архитектуры (32/64 бита) самого Linux-а! Выходит, что не достаточно иметь установленный glibc-devel, нужно что бы архитектура компилятора и Linux совпадали.

 

Заключение: возможны два варианта: (1) не установлен таки glibc-devel, (2) архитектура компилятора и Linux не совпадают.

 

:-)

On 08/18/2010 10:10 PM, Dmitry A. Kazakov wrote:

 

Они разные, и друг друга не любят.

 

Ребята, давайте жить дружно!

 

Вывод был такой:

 

gnatmake -d -P/home/Vic/Ada/first.gpr

gnatbind -I- -x /home/Vic/Ada/test.ali

gnatlink /home/Vic/Ada/test.ali -o /home/Vic/Ada/test

/usr/gnat/libexec/gcc/i686-pc-linux-gnu/4.3.6/ld: crt1.o: No such file: No such file or directory

collect2: ld returned 1 exit status

gnatlink: error when calling /usr/gnat/bin/gcc

gnatmake: *** link failed.

 

Теперь анализируем. gnatmake, gnatbind, gnatlink - стоят. Какой ld запускает gnatlink? Правильно, из собственных потрохов, /usr/gnat/... Значит GNAT от AdaCore, иначе бы вызывался системный, /usr/bin/ld. По пути отмечаем, что используется архитектура i686-pc-linux-gnu.

Идём дальше. Что он не находит? А не находит он файл crt1.o, который

есть стартовая часть приложения со стороны стандартной системной библиотеки C. (Да есть ещё crt0.o, это стартовый файл со стороны компилятора.) Простым смертным он не нужен, ибо статически влинкован в любое приложение. А непростые смертные программисты имеют установленными -devel пакеты.

 

+++++++++++++++

++ При установке Федоры следовал стандартным рекомендациям. А непростые программисты, что при установке делают? Или они дьявел пакет позже ставят (откудова дистрибутив тогда берут?)

+++++++++++++++

 

Открываю свой OpenSUSE и ищу... Пакет glibc-devel, полный

путь файла /usr/lib64/crt1.o.

 

+++++++++++

++ по простоте (читай, неграмотности) не понял, если такой полный путь, то откедова видно, что из пакета glibc-devel? Я по простоте искал директорий glibc или похожее...

+++++++++++

 

  Ага! lib64! Значит он зависит ещё и от

архитектуры (32/64 бита) самого Linux-а! Выходит, что не достаточно иметь установленный glibc-devel, нужно что бы архитектура компилятора и Linux совпадали.

 

Заключение: возможны два варианта: (1) не установлен таки glibc-devel,

+++++++++++

++ ничего с похожими названиями в своей машине не обнаружил

++ Мо, это хорошо скрытые файлы? Хотя признаков такого института не нахожу +++++++++++

 

 

(2) архитектура компилятора и Linux не совпадают.

 

:-)

 

+++++++++++

++ Что тут смешного ?:))

++ По крайней мере 32=32 без сомнений

++ Далее заместо /usr/lib64/ такого, как /usr/lib32/ нет, есть /usr/lib/ и /usr/lib/. Но ни там, ни там файла с crtЦифра.о нет

++ По поводу 64 архитектуры должен заметить, что год назад на машину с такой архитектурой GNAT GPS стал, как вкопаный (навенрное сразу, проблем не помню, чтоб были) и до сих работает не хуже, чем под Виндой. Правда, как Федору ставили не знаю, но знаю кто, и я их ненамного проще...

+++++++++++

 

++ Спасибо,

++ Виктор

++++++++++++++++++++

------------------------------------

 

 

 

 

 

 

On 08/19/2010 02:20 PM, Victor Olegovich wrote:

++ При установке Федоры следовал стандартным рекомендациям. А непростые программисты, что при установке делают? Или они дьявел пакет позже ставят (откудова дистрибутив тогда берут?)

 

Это нужно найти специалиста по Fedora.

 

Открываю свой OpenSUSE и ищу... Пакет glibc-devel, полный

путь файла /usr/lib64/crt1.o.

 

+++++++++++

++ по простоте (читай, неграмотности) не понял, если такой полный путь, то откедова видно, что из пакета glibc-devel? Я по простоте искал директорий glibc или похожее...

У OpenSUSE менеджер пакетов графический. Там всё просто набираешь имя файла, жмёшь "Search" и созерцаешь список пакетов.

 

++ По крайней мере 32=32 без сомнений

++ Далее заместо /usr/lib64/ такого, как /usr/lib32/ нет, есть /usr/lib/ и /usr/lib/. Но ни там, ни там файла с crtЦифра.о нет

Если архитектура 32 бита, то это будет файл /usr/lib/crt1.o

 

++ По поводу 64 архитектуры должен заметить, что год назад на машину с такой архитектурой GNAT GPS стал, как вкопаный (навенрное сразу, проблем не помню, чтоб были) и до сих работает не хуже, чем под Виндой. Правда, как Федору ставили не знаю, но знаю кто, и я их ненамного проще...

Linux 64 наверное самая популярная среди разработчиков GPS платформа.

 

 

--- On Wed, 8/18/10, Dmitry A. Kazakov <alt@...> wrote:

 

From: Dmitry A. Kazakov <alt@...>

Subject: Re: [ada_ru] Troubles with Linux :(

To: ada_ru@yahoogroups.com

Date: Wednesday, August 18, 2010, 11:54 PM

 

On Wed, 18 Aug 2010 13:06:13 -0700 (PDT), you wrote:

 

gnatmake test.adb-- говорит, что команды такой нету.

 

В PATH должен быть /usr/gnat/bin, там он лежит (если от GNAT GPL).+++++++++++++++++++++++++++++  Да, есть (да)+++++++++++++++++++++++++++

 

На самом деле вызов gnatmake с указанием пути к test.adb имеет почти тот же эффект, что по команде сборки из оболочки GPS.

 

Т.е. GPS не при чем. Сломан компилятор, не правильно установлен.

 

А Федора gnat стоит?-- Визуально не нашелЧто говорит

 

rpm -q -a -- перечисляет файлы.

 

Все пакеты, надо:

 

$ rpm -q -a | grep gnat++++++++++++++++++ По такой команде - пустое сообщение++++++++++++++++

gcc-gnat-4.4.4-10.fc13.i686

libgnat-devel-4.4.4-10.fc13.i686

fedora-gnat-project-common-1.2-1.fc13.noarch

libgnat-4.4.4-10.fc13.i686

   - т.е. установлен++++++++++++++++++ По поводу версии. Файл, установленый из дистрибутива GNAT: i686-pc-linux-gnu-gcc-4.3.6++++++++++++++++

 

Далее родной gcc:

 

$/usr/bin/gcc -v+++++++++++++++++ Такого у нас, насколько вижу в usr/bin/, нету!+++++++++++++++

Using built-in specs.

Target: i686-redhat-linux

Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix

--enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object

--enable-languages=c,c++,objc,obj-c++,java,fortran,ada

--enable-java-awt=gtk --disable-dssi

--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre

--enable-libgcj-multifile --enable-java-maintainer-mode

--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch=i686

--build=i686-redhat-linux

Thread model: posix

gcc version 4.4.4 20100630 (Red Hat 4.4.4-10) (GCC)

 

Неродной gcc из GNAT GPL:

 

$/usr/gnat/bin/gcc -v

Using built-in specs.

Target: i686-pc-linux-gnu

Configured with: ../src/configure --prefix=/usr/gnat

--with-build-time-tools=/cardhu.b/gnatmail/release-gpl/build-cardhu/obj --with-gmp=/cardhu.b/gnatmail/release-gpl/build-cardhu/libmpfr/install --with-mpfr=/cardhu.b/gnatmail/release-gpl/build-cardhu/libmpfr/install --build=i686-pc-linux-gnu --enable-languages=c,ada,c++ --disable-nls --without-libiconv-prefix --disable-libmudflap --disable-libffi

--disable-libstdcxx-pch --disable-libada --enable-checking=release --enable-__cxa_atexit --enable-threads=posix

--with-bugurl=URL:mailto:report@...m

Thread model: posix

gcc version 4.3.6 20100603 for GNAT GPL 2010 (20100603) (GCC)

 

Впрочем, это не важно. Это какие-то внутренние дела в gcc. У меня раз такое было после upgrade с одного gcc на другой (4.2 на 4.3, по-моему). Вместо того, чтобы разбираться, мне было проще переустановить Федора.

 

Кстати, не надо устанавливать gcc-gnat самого Федора - он гнилой, хоть и 4.4.4, если все равно собираетесь пользоваться GNAT GPL (4.3.6).

Не пора ли  по совету Вадима к "отцам -основателям"?

 

Нет, это не их ошибка. У Вас два разных компилятора gcc, куски одного лезут в другой. Грамотно их развести можно, и обычно они мирно сосуществуют, но при появлении проблем, требует копания gcc-х делах.+++++++++++++++++ К счастью-ли, несчастью, но, похоже, не так+++++++++++++++

 

Тоже, судя по-всему, и с GTK те же дела, т.к. GPS ругается на библиотеки, а не должен. (GTK тоже два один из Федора и GNOME, другой из GNAT GPL).+++++++++++++++++ А это - наверное, но  до  видимых последствий пока не дошло+++++++++++++++++ Спасибо!++ Ваша информация для меня поучительна++ Виктор+++++++++++++++

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

------------------------------------

 

Yahoo! Groups Links

 

 

 

 

 

 

On Thu, 19 Aug 2010 03:51:39 -0700 (PDT), you wrote:

 

Далее родной gcc:

 

$/usr/bin/gcc -v+++++++++++++++++ Такого у нас, насколько вижу в usr/bin/, нету!

 

А может Вадим в точку попал? Что если установить gcc?

 

Из-под root-a:

 

$ yum install gcc

$ yum install glibc

$ yum install glibc-devel

 

да и GTK

 

$ yum install gtk2

$ yum install gtk2-devel

 

и попробовать gnatmake?

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

--- On Thu, 8/19/10, Dmitry A. Kazakov <alt@...> wrote:

...

 

А может Вадим в точку попал? Что если установить gcc?

 

Из-под root-a:

 

$ yum install gcc----------------------------------------------------------------------------------------------------------------- Говорит, что не может найти репозиторий fedora-- На другой машине я посмотрел установочный диск Федоры, которым пользовался. Там в директории Packages нужные пакеты, которые называл Вадим есть, но не были скопированы на жесткий диск. Вставил загр.диск, но он автоматически не примонтировался. Мо, потому, как загрузочный? В ручную не умею. По прежнему репозиторий не находится, а какой путь к непримонтированному диску укажешь? Проще переустановить Федору в режиме

ручного управления?----------------------------------------------------------------------------------------------------------------- Спасибо,-- Похоже, мои консльтанты близки к истине,-- а я недалёк от цели :). осталось только ...-- Виктор----------------------------------------------------------------------------------------------------------------

$ yum install glibc

$ yum install glibc-devel

 

да и GTK

 

$ yum install gtk2

$ yum install gtk2-devel

 

и попробовать gnatmake?

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

------------------------------------

 

Yahoo! Groups Links

 

 

 

 

 

 

Здесь команда для того, чтобы сконфигурировать yum:

 

http://www.fedorafaq.org/#installsoftware

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

Добра всем!Для того, чтобы закончить тему по проблеме:оказалось невозможно собрать программу с помощью gnat, установленного адакоровским инстолляром под Федорой 13.

Вывод моих консультантов об отсутствии на машине установленного пакета glibс-devel был правильным.Для тех, кто вдруг столкнётся с этим на компе с Федорой, установленной в стандартном (для простых программистов) режиме скажу, что недостающие пакеты нужно ставить в порядке:glibс-2.12-1.i686                -- этот уже был, kernal-headers-2.6.33.3-85fc.1.3.1.i686--, glibс-headers-2.12-1.i686   -- ,-- glibс-devel-2.12-1.i686    --после него gnat работаетДмитрий резонно рекомендовал ставить йамом, но мне проще (быстрее, чем подключаться в тот момент к Интету) оказалось сделать это эрпээмом

(сообразив скопировать нужные файлы с установочного диска). Всё, конечно, быстро. Но сразу опубликовать этот отчёт я не смог по не связанным  с Адой причинам. В заключение еще раз благодарю за оперативную помощь Вадима и Дмитрия!Виктор%%%%%%%%%%%%%%%%%%%%%%%%%

--- On Thu, 8/19/10, Dmitry A. Kazakov <alt@...> wrote:

 

From: Dmitry A. Kazakov <alt@dmitry-kazakov.de>

Subject: Re: [ada_ru] Troubles with Linux :(

To: ada_ru@yahoogroups.com

Date: Thursday, August 19, 2010, 5:51 AM

 

Здесь команда для того, чтобы сконфигурировать yum:

 

http://www.fedorafaq.org/#installsoftware

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

 

 

------------------------------------

 

Yahoo! Groups Links

 

 

 

 

 

 

On Втр, 2010-08-31 at 08:24 -0700, Victor Olegovich wrote:

 

оказалось невозможно собрать программу с помощью gnat, установленного адакоровским инстолляром под Федорой 13.

 

 

Вывод моих консультантов об отсутствии на машине установленного пакета glibс-devel был правильным.

 

Для тех, кто вдруг столкнётся с этим на компе с Федорой, установленной в стандартном (для простых программистов) режиме скажу, что

недостающие пакеты нужно ставить в порядке:

 

glibс-2.12-1.i686 -- этот уже был,

 

kernal-headers-2.6.33.3-85fc.1.3.1.i686--,

 

glibс-headers-2.12-1.i686 -- ,

 

-- glibс-devel-2.12-1.i686 --после него gnat работает

 

Дмитрий резонно рекомендовал ставить йамом, но мне проще (быстрее, чем подключаться в тот момент к Интету) оказалось сделать это эрпээмом (сообразив скопировать нужные файлы с установочного диска).

 

 

Это совершенно нормальная ситуация. :) Если ставить что-то пакет

менеджером дистрибутива, путь то rpm для редхат подобных или dpkg от дебиан подобных, то все зависимости проверяет пакет менеджер сам. Если ставить более высокоуровневой тулзой, юмом, aptitude и т.д. то они сами же и ставят недостающие пакеты в нужной последовательности. Я уж не знаю как в Федоре, но дебиане gnat в виде пакета есть (не адакоровский), хотя не понимаю, что адакоре мешает их GPL Gnat под линукс самим паковать в rpm и deb, им не сложно, а пользователям приятно.

 

А всё программное обеспечение "сторонних производителей" которое

ставятся не пакетом, тут отслеживание всех зависимостей и недостающих библиотек ложится целиком на того, кто ставит, ручной труд. Обычно они перечисляются в очевидном файле либо это INSTALL (по GNU стандартам), либо README, либо еще чего.

 

Впрочем у большинства программистов, кто хотя бы раз написал "Hello World" на C все эти пакеты стоят настолько давно, что можно забыть об их существовании. :)

 

--

Olleg Samoylov

On Wed, 01 Sep 2010 04:15:55 +0400, you wrote:

 

Я уж не знаю

как в Федоре, но дебиане gnat в виде пакета есть (не адакоровский),

 

Есть, есть, но как и в Демьяне - тухлый.

 

хотя

не понимаю, что адакоре мешает их GPL Gnat под линукс самим паковать в rpm и deb, им не сложно, а пользователям приятно.

 

Это грандиозный геморрой. Я запаковал мои дела под Федора и Демьяна, и понимаю, почему AdaCore не хочет мараться. Не говоря уже о возникающих текущих расходах на подгонку к новым релизам gcc, gtk и библиотек, от которых GNAT зависит. Кто за банкет платить будет?

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

Dmitry A. Kazakov wrote:

 

хотя

не понимаю, что адакоре мешает их GPL Gnat под линукс самим паковать в

rpm и deb, им не сложно, а пользователям приятно.

 

Это грандиозный геморрой. Я запаковал мои дела под Федора и Демьяна, и

понимаю, почему AdaCore не хочет мараться. Не говоря уже о возникающих

текущих расходах на подгонку к новым релизам gcc, gtk и библиотек, от

которых GNAT зависит. Кто за банкет платить будет?

 

Именно так дело и обстоит. Координация GNAT-а с версиями gcc - это отдельная

тяжелая работа. Потому-то собранный на стороне "на ура" с распоследним gcc,

GNAT обычно работает криво и косо.

On Срд, 2010-09-01 at 09:28 +0200, Dmitry A. Kazakov wrote:

Это грандиозный геморрой. Я запаковал мои дела под Федора и Демьяна, и понимаю, почему AdaCore не хочет мараться. Не говоря уже о возникающих текущих расходах на подгонку к новым релизам gcc, gtk и библиотек, от которых GNAT зависит. Кто за банкет платить будет?

 

:) А так вы предлагаете чтобы геморрой разгребал каждый неопытный юзер который ставит все мешком и потом не понимает почему у него не работает? Не лучше ли чтобы это один раз сделал супер профессиональный спец. Адакоровски и это у всех сразу заработало?

 

Делать инсталятор это не банкет, под виндами все программы в

инсталяторах идут, а без этого это считается признаком, ну,

двадцатилетней давности. Платить? Коммерческие юзеры, т.к. в Pro версии все это тоже будет.

--

Olleg Samoylov

On 09/01/2010 02:59 PM, Olleg Samoylov wrote:

 

Платить? Коммерческие юзеры, т.к. в Pro версии все это тоже будет.

Вы наверное удивитесь, но они этого делать не будут. В мелкой частности из-за того, что ни Fedora ни Debian ими официально не используются, и, таким образом, создание пакета для этих систем есть ответственность широкой общественности.

Olleg Samoylov wrote:

 

:) А так вы предлагаете чтобы геморрой разгребал каждый неопытный юзер

который ставит все мешком и потом не понимает почему у него не работает?

Не лучше ли чтобы это один раз сделал супер профессиональный спец.

Адакоровски и это у всех сразу заработало?

 

Адакоровские спецы это сделали, для тех платформ, для которых сочли

разумным. Объять необъятное - невозможно.

 

Я бы настоятельно рекомендовал использовать именно Адакоровские

GPL-сборки GNAT-а. Во избежание недоразумений...

On Wed, 01 Sep 2010 15:52:29 +0400, you wrote:

 

Olleg Samoylov wrote:

 

:) А так вы предлагаете чтобы геморрой разгребал каждый неопытный юзер который ставит все мешком и потом не понимает почему у него не работает? Не лучше ли чтобы это один раз сделал супер профессиональный спец.

 

Это не один раз, это много, много раз. Спецы должны на полной ставке сидеть, и только этим и заниматься. Никакая коммерческая контора (а не жулики типа Microsoft или Google) этого делать не будет.

 

Адакоровски и это у всех сразу заработало?

 

Адакоровские спецы это сделали, для тех платформ, для которых сочли разумным. Объять необъятное - невозможно.

 

Было бы можно, если пижоны делающие дистрибутивы договорились бы о единой политике пакетов. Пока, даже просто названия пакетов, скажем, GNAT-а должны быть разными. Поддерживать тучу разных дистрибутивов, о чем тут говорить?

Я бы настоятельно рекомендовал использовать именно Адакоровские

GPL-сборки GNAT-а. Во избежание недоразумений...

 

Это да, но одни недоразумения замещаются другими. Например, когда построенную программу надо тащить на другие машины, а она прилинкована к glib, odbc. gtk, и море чего. И все, между прочим, - динамические библиотеки. Кстати, мерзкая политика дистрибьютеров не позволяет

статическую линковку. Хрена для Федора статические библиотеки найти. Так что, куда ни кинь - везде клин.

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

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

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