Мне нужно добавить /oracle/v10.2.0/lib в LD_LIBRARY_PATH, чтобы использовать модуль DBI для подключения к Oracle.
Если я установлю LD_LIBRARY_PATH в оболочке перед выполнением сценария perl, все в порядке.
Но он не работает из скрипта:
BEGIN {
$ENV{'LD_LIBRARY_PATH'}='/oracle/v10.2.0/lib';
}
use DBI;
Когда я запускаю скрипт, я получаю сообщение об ошибке:
install_driver (Oracle) не удалось: Не удается загрузить '/usr/apps/perl5/site_perl/5.8.8/i686-linux/auto/DBD/Oracle/Oracle.so 'для модуля DBD :: Oracle: libclntsh.so.10.1: невозможно открыть файл общего объекта: такого файла нет иликаталог в /usr/apps/perl5/5.8.8/i686-linux/DynaLoader.pm строка 230. в строке (eval 3) 3 Не удалось выполнить компиляцию в строке require в (eval 3) 3. Возможно, требуется общая библиотека или dllне установлен там, где ожидается, в /var/tmp/getTraceDB.pl строка 23