Отправляет email-рассылки с помощью сервиса Sendsay

проблемы при компиляции

Доброе время суток!

У меня возникла такая проблема, никак не могу ее победить. Стоит АСПЛинукс, пока
ставил родные пакеты rpm, все было нормально. но как только попытался поставить
из исходников - началось. Собственно проблема:
configure проходит нормально, а вот make все время заканчивается примерно следующим:

при попытке установить doom:
awspan.o drawcol.o -L/usr/X11R6/lib -lSM -lICE -lX11 -lXext -L/usr/X11R6/lib
l_video_x.o(.text+0xdd4): In function `I_XShmGrabSharedMemory':
: undefined reference to `errno'
collect2: ld returned 1 exit status
make[2]: *** [lxdoom] Ошибка 1
make[2]: Выход из каталог `/usr/local/src/lxdoom-1.4.4/src'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Выход из каталог `/usr/local/src/lxdoom-1.4.4'
make: *** [all-recursive-am] Ошибка 2
[root@localhost lxdoom-1.4.4]#

ну и на этом все решительно заканчивается. При компиляции ядра кстати происходит
такая же штука:
/usr/src/linux-2.4.20-9asp/arch/i386/lib/lib.a --end-group -o .tmp_vmlinux1
fs/fs.o(.text+0x37c02): In function `zisofs_readpage':
: undefined reference to `zlib_inflateInit_'
fs/fs.o(.text+0x37d04): In function `zisofs_readpage':
: undefined reference to `zlib_inflate'
fs/fs.o(.text+0x37db6): In function `zisofs_readpage':
: undefined reference to `zlib_inflateEnd'
fs/fs.o(.text.init+0xacc): In function `mnt_init':
: undefined reference to `init_rootfs'
fs/fs.o(.text.init+0xfa1): In function `zisofs_init':
: undefined reference to `zlib_inflate_workspacesize'
make[1]: *** [kallsyms] Ошибка 1
make[1]: Выход из каталог`/usr/src/linux-2.4.20-9asp'
make: *** [vmlinux] Ошибка 2
[root@localhost linux-2.4]#

Кто-нибудь может сказать, где грабли?
Заранее спасибо,

Андрей

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Andrey Lyapin" (#2654)

 

Ответы:

18 Сентябрь 2003 17:32, Andrey Lyapin написал:

Хм, ну хотя-бы какая версия gcc?
Какая версия asplinux?

Ответить   Ilya (#2706)

 

Доброе время суток!

3.2.2

ASPLinux 9 Ural

Удачи,
Андрей

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Andrey Lyapin" (#2789)

 

19 Сентябрь 2003 11:46, Andrey Lyapin написал:

Думаю должно собраться gcc 2.96

3.x и, особенно 3.2 очень строги к стандарту

То что в 2.96 было warning'ами, в 3.х стало error'ами

Вроде там есть более ранние версии gcc

Ответить   Ilya (#2802)

 

Доброе время суток!

Хорошо, спасибо за совет, попробую, только вот перставлять нужно будет не только
сам gcc, но и libgcc, верно?

Не знаю, на дисках в исходниках не смотрел, а вот на установочных точно только
этот.

Спасибо за ответ,
Удачи,
Андрей

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Andrey Lyapin" (#2803)

 

Andrey Lyapin wrote:

Если дистр собран с gcc 3.2 то можно забыть о компиляции программ на C++
более ранними
версиями. Дело в том, что для корректной компиляции вам придется
преобирать вручную
все библиотеки C++, т.к. ABI (Application Binary Interface) в gcc 2.96,
3.0, 3.1 и 3.2 разные (в каждой
версии свой).

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Max Vasin (#2811)

 

19 Сентябрь 2003 13:18, Andrey Lyapin написал:

По-моему, libgcc этот от 3.x gcc

Переставлять, вроде ничего не нужно. Просто доставьте пакеты gcc 2.96

И выбрать можно будет через gcc-select (а... э... есть ли он в
asplinux9?)

Исходники не нужны. Ставьте из бинарников.

Кстати, посмотрите стоят ли соответствующие *-devel пакеты.

В этом думе скрипт ./configure был вообще?

Ответить   Ilya (#2812)

 

Често говоря, не в курсе, но попробую выяснить.

Ну, я так полагаю, что если бы его не было, он наверно бы не запустился и ошибку
выдал?

--
Удачи,
Андрей

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Andrey Lyapin" (#2818)

 

Andrey Lyapin wrote:

Не факт. Но gcc бы вас обругал очень сильно во время компиляции, выдал
бы несколько
десятков ошибок.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Max Vasin (#2822)

 

Здравствуйте, Ilya.

Вы писали 19 septembrie 2003, 12:08:19:

Всё верно, и совет правильный, но проблема именно на процессе
сборки (linking). Для ядра можно попробовать отключить "Transparent
decompression support" (вроде так) в разделе ISO9660 filesystem.

С doom'om решается иначе. Судя по всему версия игры - СТАРАЯ, а
система более чем новая (Дум наверно знал только libc{4,5}, kernel
1.x). Может он использует свой прототип errno, несовместимый с
новым glibc/gcc. Поэтому можно:
а) забить :-(
б) поискать версию посвежее (sf.net/freshmeat.net/icculus.org)
в) Как настоящий програмист, портировать классику на свою систему
и поделится патчем. (без шуток)

в RedHat 9 (аналог) есть пакет compat-gcc-7.3-2.96.118.i386.rpm - то
есть gcc 2.96. вызов gcc2

PS: кому-нибудь нужен патч RUSXMMS
(http://sourceforge.net/project/showfiles.php?group_id=65796)
но для xmms-1.2.8?

Ответить   Vasile (#2816)

 

Vasile wrote:

можно попробовать в файл l_video_x.c из исходников Дума добавить объявление
int errno;

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Max Vasin (#2821)

 

Доброе время суток!

Вот спасибо, хорошо! Я к сожалению (или к счастью ;-) не программист, да и потом
разгребсти бы все проблемы для начала. Это к сожалению, не последний вопрос сюда,
просто все проблемы разом решать не имею дурной привычки - все по мере поступления.

ТОчно, есть такое, а я то все думал, для чего этот пакет нужен (информация была
довольно туманная).
Спасибо огромное, теперь последний вопрос - и как ему скомандовать, чтобы make
он делал не с gcc3, а с gcc2?

--
Удачи,
Андрей

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Andrey Lyapin" (#2823)

 

Andrey Lyapin wrote:

сюда,

А что нельзя сделать
mv /usr/bin/gcc /usr/bin/gcc3
mv /usr/bin/gcc2 /usr/bin/gcc
?
Хотя обычно /usr/bin/gcc - это симлинк, тогда
ln -sf /usr/bin/gcc2 /usr/bin/gcc

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Max Vasin (#2854)

 

Здравствуйте, Max.

Вы писали 19 septembrie 2003, 14:14:34:

Можно, но запускать make
#make CC=gcc2
как-то красивее

Ответить   Vasile (#2855)

 

Приветствую, Vasile,

мне нужен, но по указанному адресу его нету... :(

20 Сентябрь 2003 22:04, Michael написал:

На сколько я понял, он там и не предполагается :о)

Могу выложить его на http://www.linuxrsp.ru/progs/
(Если Vasile мне его пришлет :о)

Ответить   Ilya (#3060)

 

Берите патч (22k)
http://moldovacc.md/chelban/xmms-1.2.8-ds-recode.vasile.patch.bz2

небольшой коментарий к патчу.
После патча нужно с помощью autotools пересоздать служебные файлы

#aclocal
#autoheader
#automake --add-missing --copy
#autoconf
#automake

ну и дальше традиционные
#./configure --enable-simd
#make
#make install

Ответить   Vasile (#3724)

 

24 Сентябрь 2003 13:15, Vasile написал:

А так же:
http://www.linuxrsp.ru/progs/
http://www.linuxrsp.ru/progs/xmms-1.2.8-ds-recode.vasile.patch.gz

Ответить   Ilya (#3786)

 

Привет!


а сам патч как применить, неподскажите?

Ответить   Vadim (#4204)

 

Привет!

вопрос отменяется -- все заработало...

Ответить   Vadim (#4206)

 

Здравствуйте, Vadim.

Вы писали 25 Сентябрь 2003 г., 22:41:15:

С удовольствием.
1. Сначала достаём все патчи/исходники (wget/prozilla'ой/d4x...), для
удобства обозначения предполагаю что всё находится в текущёй временной
папке (/tmp/xmms, /usr/src, и.т.д, и.т.п.)
2. распаковываем исходники xmms
#tar xjf xmms-1.2.8.tar.bz2
3. (для примера если вместо исходников xmms-1.2.8, исходники
xmms-1.2.7, то после их распаковки можно проапгрейдить до последней
версии командами
#cd xmms-1.2.7
#bzcat ../xmms-1.2.7-1.2.8.patch.bz2 |patch -p1
#cd ..
#mv xmms-1.2.{7,8}
)
4. собственно ответ на вопрос - патч
#cd xmms-1.2.8
#bzcat ../xmms-1.2.8-ds-recode.vasile.patch.bz2 |patch -p1
5. Сам себя цитирую, дожился :-)

6. Ручная инсталяция (из под root'а)

7. Вместо п.6 можно поставить свою rpm'ку (что наверное
предпочтительно для redhat-based систем). (предполагается что
предыдущий этап п.5)
#cd ..
#tar czf xmms-1.2.8.tar.gz xmms-1.2.8
#rpmbuild -tb xmms-1.2.8.tar.gz
#rpm -ivh /usr/src/../i386/xmms-*1.2.8*.rpm

Замечание 1. последний путь (/usr/src/../i386/) как правило
отличается для разных систем поэтому для я его здесь и привёл в
таком варианте. Для вашей конкретной системы смотрите окончание
вывода предыдущей комманды: строки вида
Wrote: /usr/src/../i386/xmms-1.2.8.i386.rpm
Замечание 2. Заметьте: хотя изначально исходники были сжаты
bzip2, для сборки rpm нужно использовать gzip, что и делается
выше.

Если на вашей системе не работает один из этапов - пишите, желательно
с выводом комманд - разберёмся.

Ответить   Vasile (#4209)

 

Привет!

я делал так:
# tar xjf xmms-1.2.8.tar.bz2
# bzip2 -d xmms-1.2.8-ds-recode.vasile.patch.bz2
# patch -p0 < xmms-1.2.8-ds-recode.vasile.patch

ключ -pN -- служит для урезания каких путей?

Ответить   Vadim (#4290)

 

Здравствуйте, Vadim.

Вы писали 26 Сентябрь 2003 г., 10:29:50:

отлично. рад что работает и так тоже.

Просто в общем случае имя каталога исходников верхнего уровня (в
данном случае xmms-1.2.8), может не совпадать с именем записанным в
патче.
Пример 1. имеется несколько патчей, которые надо последовательно
применить. Скажем для vim'а в патче записан путь
../vim-6.2.056/src/os_mac.c, а каталог у нас vim-6.2/src
==> вырезаем 2 каталога из пути "../vim-6.2.056"

я использую такой скрипт
#tar xjf vim-6.2.tar.bz2
#cd vim-6.2
#for patch_file in ../vim/patches/vim-6.2.???; do
cat $patch_file | patch -p2
done

пример 2: разработчики странные люди (это я про себя :-),
смотрю патч для kernel-2.6.0-test5, пути записаны так
a/drivers/..
Вопрос: ядро у вас хранится в каталоге a или kernel-2.6.0-test ?
Поэтому здесь нужен параметр -p1.

to: All
Обратите внимание на PS в конце моего предыдущего письма в этом
thread'е.

Ответить   Vasile (#4308)

 

On Friday 26 September 2003 12:59, Vasile <Vasile
<mail45***@p*****.ru>> wrote:

Есть ряд вопросов по вашему патчу.

Я получил правильное отображение mp3 tags.

Но похоже он заодно перекодирует и ogg comments и информацию
из плейлистов. В результате я их теперь вижу дважды
перекодированными. Можно ли с этим бороться?

--
Serge B. Khvatov Phone:+7(812)1133186 //
+7(812)1106579 //echno
mailto:xbat***@t*****.ru // St-Petersburg

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Serguei B. Khvatov" (#4317)

 

Здравствуйте, Serguei.

Вы писали 26 Сентябрь 2003 г., 12:23:07:

Вот тут один важный момент (кстати его можно увидеть на странице
http://www.linuxrsp.ru/progs/), а именно

то есть автора (настоящего) стоит искать на http://rusxmms.sf.net/

насколько я знаю для ogg используется unicode в качестве
внутренего формата представления символов. Так как в своей 2
недельной коллекции музыки не имею ни одного экземпляра ogg -
поэтому я не обратил внимания на этот нюанс.
Вариантов решения два
1. обратится к разработчику (http://dside.dyndns.org/) и
попросить его расмотреть этот баг (желательно)
2. Подождать когда кто-то на стороне решит вопрос (может я
найду время, может найдётся в Росии любитель качественной
бесплатной ogg музыки).
3. Закатать рукава и самому с этим разобраться. Сделав новый
улучшенный патч обратиться к модератору (для тех кто не знает
Ilya mailto: xinu at pochta.ru), с просьбой заменить мой патч.
+ кинуть сообщение в рассылку (наиболее предпочтительный
вариант).
Кстати ни один из этих вариантов не исключает другие.

Ответить   Vasile (#4369)

 

On Friday 26 September 2003 18:53, Vasile <Vasile
<mail45***@p*****.ru>> wrote:

Спасибо, только ещё на прошлой неделе проект выглядел
мертвым - старые версии, ссылки, ведущие в никуда... За эту
неделю вышло целых три новых версии патча. Буду пробовать.
--
Serge B. Khvatov Phone:+7(812)1133186 //
+7(812)1106579 //echno
mailto:xbat***@t*****.ru // St-Petersburg

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Serguei B. Khvatov" (#4540)

 

26 Сентябрь 2003 00:35, Vasile написал:

Не вижу ничего криминального, если вы об этом. Наоборот! Во-первых
продукт свободный, во-вторых любопытный.

Побольше бы таких mini howto! :o)

Если найдется время попробую выложить на linuxrsp.ru

Ответить   Ilya (#4394)

 

19 Сентябрь 2003 13:46, Vasile написал:

Да, скорее вы правы. Интересная информация спасибо.

А то я на C/C++ не часто программирую и мало. Скоро будет много :о)
К счастью, только на C.

Ответить   Ilya (#3059)

 

Andrey Lyapin wrote:

пока

Все ошибки - из-за того ld не находит нужных ему библиотек. Это именно
ошибки во время компоновки
программы. Странно то, что в первом случае только на errno жалуется -
эта переменная из libc, но если
бы ld ее не находил ошибок бы было бы ОЧЕНЬ много. А во втором похоже на
то, что линкер не видит
модулей с функциями zlib.

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Max Vasin (#2809)

 

Доброе время суток!

И какие в этом случае методы решения?
И вообще странно - ну ладно в случае dooma, но ядро родное asp, компилятор родной,
ничего вроде не обновлял, и тут тебе на пожалуйста!

" Ничего не делал, только зашел, да!" (с) Кавказская пленница!

Удачи,
Андрей

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.linux.discuss&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Andrey Lyapin" (#2814)