[devel] продолжение сборки quagga. сборка в hasher, а , так же , %set_verify_elf_method unresolved

Sergey Y. Afonin =?iso-8859-1?q?asy_=CE=C1_altlinux=2Eru?=
Чт Мар 9 20:04:09 MSK 2006


On Thursday 09 March 2006 19:52, Sergey Vlasov wrote:

> > Verifying ELF objects in /usr/src/tmp/quagga-buildroot (arch=normal,fhs=relaxed,rpath=normal,textrel=normal,unresolved=relaxed)
> > verify-elf: WARNING: ./usr/lib/libzebra.so.0.0.0: undefined symbol: master
> > verify-elf: WARNING: ./usr/lib/libospf.so.0.0.0: undefined symbol: no_interface_desc_cmd
> > verify-elf: WARNING: ./usr/lib/libospf.so.0.0.0: undefined symbol: no_interface_cmd
> > verify-elf: WARNING: ./usr/lib/libospf.so.0.0.0: undefined symbol: recent_time
> > <и т.д.>
> > 
> > %set_verify_elf_method unresolved=relaxed
> > ситуацию спасает, оно, потом, работает. Ввиду малого современного
> > программистского опыта готов выслушать, куда попытаться посмотреть.
> 
> Нужно посмотреть, где на самом деле определены недостающие символы (nm -D,
> findsym).  Если в других библиотеках - необходимо указать их при сборке.
> Впрочем, ELF допускает и вариант, когда библиотека использует символы,
> предоставляющиеся исполняемым файлом - в таком случае остаётся либо
> проигнорировать проблему, либо разбираться, зачем это было нужно, и искать
> другой способ реализации, не требующий подобных ссылок.
> 

Пока мало, что говорит (quagga собранная у меня стоит):

$ nm -D libzebra.so |grep master
00051d58 B if_master
         U master
00051d88 B sigmaster
0001ace0 T thread_master_create
0001af2a T thread_master_free

$ findsym  master
/usr/bin/findsym: The symbol master was not found.

$ findsym no_interface_desc_cmd
/usr/lib/libzebra.so: 0004b3a0 D no_interface_desc_cmd
/usr/lib/libzebra.so.0: 0004b3a0 D no_interface_desc_cmd
/usr/lib/libzebra.so.0.0.0: 0004b3a0 D no_interface_desc_cmd

Пожалуй только то, что для сборки libospf надо указать -llibzebra, но что
указывать для libzebra...

-- 
С уважением, Сергей Афонин
asy на altlinux.ru



Подробная информация о списке рассылки Devel