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

Igor Muratov =?iso-8859-1?q?migor_=CE=C1_altlinux=2Eorg?=
Пт Июл 27 19:41:03 MSD 2007


Igor Muratov пишет:
> Приветствую всех
>
> Еще раз хочу поднять проблему оракла в наших дистрибутивах. Прежде всего
> потому, что вот здесь
>    http://www.altlinux.ru/enterprise/alt_linux_4.0_server.html
> написано что все протестировано и проблем нет. Хотелось бы знать кто
> тестировал и кто считает что все с ораклом замечательно.
>
> Я попробовал установить оракл и в итоге нашел 5 точек в которых сборка
> оракла не получается. К сожалению я не силен в работе gcc и поэтому
> затрудняюсь сказать почему такое происходит.
>
> Исходные данные - дистрибутив Server 4.0.1 с пакетом
> oracle-preinstall-0.4-alt4. Оракл ставится с настройками по умолчанию.
> При возникновении ошибки компиляции просто игнорирую и иду дальше. После
> этого уже в шеле пытаюсь пофиксить эти места в ручную.
>
> 1
> $ cd $ORACLE_HOME/rdbms/lib
> $ make -f ins_rdbms.mk ioracle
>
> Не находит объекты из библиотек libskgns.so и libsrvmhas10.so. Оба файла
> присутствуют в $ORACLE_HOME/lib. Причем если определить переменную
> USRLIBS="-lskgxns" то объекты этой библиотеки находятся, но вот с prsr_*
> из libsrvmhas10.so такое не прокатывает. Не могу понять в чем у них разница.
> Единственный способ который помог, так это дописать "-lskgxns
> -lsrvmhas10" в файл $ORACLE_HOME/lib/ldflags. К сожалению через
> переменную передать эти параметры мне так и не удалось.
>
> 2
> $ cd $ORACLE_HOME/srvm/lib
> $ make -f ins_srvm.mk install
>
> Тоже не находит объекты skgxn* из библиотеки libskgxns.so
>
> 3
> $ cd $ORACLE_HOME/racg/lib
> $ make -f ins_has.mk racg_install
>
> Не находит объекты skgxn* из библиотеки libskgxns.so
>
> 4
> $ cd $ORACLE_HOME/network/lib
> $ make -f ins_net_server.mk install
>
> Не находит объекты ons_* из библиотеки libons.so. Хотя этот файл
> присутствует в $ORACLE_HOME/lib
>
> 5
> $ cd $ORACLE_HOME/rdbms/lib
> $ make -f ins_rdbms.mk all_no_orcl ihsodbc
>
> То же что и п.4
>
> Вот. Какие будут идеи?
>
>   
Итак, подведу итоги.

Есть предположение что мы имеем не правильно слинкованые библиотеки в
самом оракле.
- libclsra10.so имеет undefined reference на объекты вида prsr_* из
библиотеки libsrvmhas10.so
- libhasgen10.so имеет undefined reference на объекты вида skgxn* из
библиотеки libskgxns.so
- libnlsnr10.a(nsglsn.o) имеет undefined reference на объекты вида ons_*
из библиотеки libons.so
Пересобрать указанные файлы может только сам оракл. Понятно, что делать
они этого не будут.

Кроме того, все уверены что это связано с фичей ALT под названием
--as-needed. Как она влияет на линковку оракла я так и не смог понять.
Не понял так же при линковке чего нужно применять --no-as-needed.

Андрей уверяет что ему удалось это дело побороть, но секрет свой
открывать пока не хочет.

Получилось бурно, но с нулевым результатом. :(

-- 
With best regards
Igor Muratov




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