apache - perl - odbc

Beshlan

Apache/1.3.22
Есть узер, под которым успешно (из шелла) отрабатывает перловый скрипт.
А именно - запрос к виндовой базюке (unixODBC-2.0.7-3).
Но если стартовать апач от этого узера, то скрипт вываливаеца на коннекте к базе:
--- begin of error_log ---
...
install_driver(ODBC) failed: Can't load '/usr/lib/perl5/site_perl/5.6.0/i386-lin
ux/auto/DBD/ODBC/ODBC.so' for module DBD::ODBC: libiodbc.so.2: cannot open shared object file: No such file or directory at /usr/lib/perl5/5.6.0/i386-linux/DynaLoader.pm line 200.
at (eval 1) line 3
Compilation failed in require at (eval 1) line 3.
Perhaps a required shared library or dll isn't installed where expected at /var/www/cgi-bin/user.pl line 22
...
--- end of error_log ---
Где тут порылся пёс?
З.Ы. 22-я строка - $DBH = DBI->connect(тра-та-та...
З.З.Ы. Перед 200-й строкой:
# Many dynamic extension loading problems will appear to come from
# this section of code: XYZ failed at line 123 of DynaLoader.pm.
# Often these errors are actually occurring in the initialisation
# C code of the extension XS file. Perl reports the error as being
# in this perl code simply because this was the last perl code
# it executed.
З.З.Ы. Related link: http://www.perl.ru/go.cgi?action=forum&board=db&op=printpage&num=663
Только там на Windows.

ruler

No such file or directory at /usr/lib/perl5/5.6.0/i386-linux/DynaLoader.pm line 200.
?

Beshlan


# Many dynamic extension loading problems will appear to come from
# this section of code: XYZ failed at line 123 of DynaLoader.pm.
# Often these errors are actually occurring in the initialisation
# C code of the extension XS file. Perl reports the error as being
# in this perl code simply because this was the last perl code
# it executed.
my $libref = dl_load_file($file, $module->dl_load_flags) or /*Вот эта строка (прим. перев.)*/
croak("Can't load '$file' for module $module: ".dl_error;

ruler

А /usr/lib/perl5/site_perl/5.6.0/i386-linux/auto/DBD/ODBC/ODBC.so на месте?

abrek

написано, что не найден libiodbc.so.2
где он?
что сделано, чтобы он находился?

Beshlan

Похоже на то, что действительно окружения не хватает, только вот кому?
Юзеру? Перлу? Апачу?
Конструкция вида
PerlSetEnv var1 val1
PerlSetEnv var2 val2
PerlSetEnv var3 val3
PerlPassEnv var1 var2 var3
в httpd.conf не даёт результата.
Оставить комментарий
Имя или ник:
Комментарий: