[sisyphus] Oracle 10g на ALT Linux Server 4.0

Igor Muratov =?iso-8859-1?q?migor_=CE=C1_altlinux=2Eorg?=
Чт Июл 26 21:19:02 MSD 2007


Damir Shayhutdinov пишет:
>> Путь к либам? А смысл? Все пути уже и так указаны. Более того, gcc
>> чудесно находит в $ORACLE_HOME/lib любые библиотеки _КРОМЕ_ этих двух.
>>     
> да и их он находит. Просто они не в той последовательности перечислены
> или указаны в неявных зависимостях.
>
> Поставьте -Wl,--no-as-needed, сделайте очистку дерева и соберите
> снова, направив весь вывод сборки в лог. После чего найдите на каком
> файле валится (когда пишется каких символов не хватает, до двоеточия
> идет имя файла) и посмотрите, с какими опциями линковался этот файл.
> Если в списке -Wl,--no-as-needed отсутствует - значит у Оракла совсем
> кривые Makefile и их надо патчить еще, чтобы понять, как же все-таки
> передать -Wl,--no-as-needed в строку линковки злосчастной библиотеки.
>   
Ok. Я решил взять строку которую генерит makefile и поиграться с ней.
Только я взял следующий пример из списка т.к. он существенно меньше и проще.

Вот то что показывает makefile
gcc -o ocrconfig -L/opt/oracle/product/10g//lib/
-L/opt/oracle/product/10g/lib/ -L/opt/oracle/product/10g/lib/stubs/
-L/usr/lib -lirc    /opt/oracle/product/10g/srvm/lib/sprotc.o
/opt/oracle/product/10g/srvm/lib/protconf.o
/opt/oracle/product/10g/srvm/lib/prot.o -locr10 -locrb10 -locrutl10
-lhasgen10 -lsnls10 -lnls10  -lcore10 -lsnls10 -lnls10 -lcore10 -lsnls10
-lnls10 -lxml10 -lcore10 -lunls10 -lsnls10 -lnls10 -lcore10 -lnls10
-lclntsh -lskgxn2 -lcore10 `cat /opt/oracle/product/10g/lib/sysliblist`
-lclntsh    `cat /opt/oracle/product/10g/lib/sysliblist`
-Wl,-rpath,/opt/oracle/product/10g/lib -lm    `cat
/opt/oracle/product/10g/lib/sysliblist` -lm -lm  
-L/opt/oracle/product/10g/lib
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqcnum'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxncin'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqvnds'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxncdel'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxndrg'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqtsz'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxntrace'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqname'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnsdr'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqanum'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqgrp'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnprdata'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnsrg'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnqat'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnpbdata'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnpstat'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnever'
/opt/oracle/product/10g//lib//libhasgen10.so: undefined reference to
`skgxnreg'
collect2: ld returned 1 exit status
make: *** [ocrconfig] Ошибка 1

Упрощаем строку gcc и раскрываем то что спрятано в `cat <filename>` и
получаем следующее.

 gcc -o ocrconfig -L/opt/oracle/product/10g//lib/
-L/opt/oracle/product/10g/lib/ -L/opt/oracle/product/10g/lib/stubs/
-L/usr/lib -lirc /opt/oracle/product/10g/srvm/lib/sprotc.o
/opt/oracle/product/10g/srvm/lib/protconf.o
/opt/oracle/product/10g/srvm/lib/prot.o -locr10 -locrb10 -locrutl10
-lhasgen10 -lsnls10 -lnls10 -lcore10 -lxml10 -lunls10 -lclntsh -lskgxn2
-lclntsh -ldl -lm -lpthread -lnsl -Wl,-rpath,/opt/oracle/product/10g/lib

Добавляю в эту троку -Wl,--no-as-needed и получаю все ту же ошибку.
Может я что-то делаю не правильно?
> _______________________________________________
> Sisyphus mailing list
> Sisyphus на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/sisyphus


-- 
With best regards
Igor Muratov




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