[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dh-make-perl. (Вызов system("cd $dir") в perl'e)



Hello. 

Дистрибутив testing.

Поставил dh-make-perl 0.15.
при попытке собрать модуль DBD-Oracle
$ dh-make-perl --build --cpan DBD::Oracle
вываливается ошибка. Финальная часть вывода приведена ниже:
dpkg-shlibdeps: warning: could not find any packages for
/opt/oracle/product/9.2.0/lib/libclntsh.so.9.0 (libclntsh.so.9.0)
dpkg-shlibdeps: warning: unable to find dependency information for
shared library libclntsh (soname 9.0, path
/opt/oracle/product/9.2.0/lib/libclntsh.so.9.0, dependency field
Depends)
dh_gencontrol
dpkg-gencontrol: warning: unknown substitution variable ${misc:Depends}
dh_md5sums
sh: line 1: cd: debian/libdbd-oracle-perl: No such file or directory
sh: line 1: DEBIAN/md5sums: No such file or directory
chmod: cannot access `debian/libdbd-oracle-perl/DEBIAN/md5sums': No
such file or directory
dh_md5sums: command returned error code 256
make: *** [binary-arch] Error 1
make: Leaving directory `/home/dmitry/tmp/666/DBD-Oracle-1.16'
Cannot create deb package

Как оказалось, все из-за команды cd, которая выполняется из перлового скрипта. 
Как вариант, простой скрипт
% cat test2.pl                                                        
                                                 14:39
#!/usr/bin/perl -w
#
use strict;
use warnings;

system("pwd;cd $ARGV[0]; pwd") == 0
  || error("command returned error code");


% ls -lad tmp                                                         
                                                 14:39
drwxr-xr-x  2 dmitry dmitry 4,1k Apr 29 09:31 tmp
[dmitry@debian][~/tmp/666/DBD-Oracle-1.16]
% ./test2.pl tmp                                                      
                                                 14:39
/home/dmitry/tmp/666/DBD-Oracle-1.16
sh: line 1: cd: tmp: No such file or directory
/home/dmitry/tmp/666/DBD-Oracle-1.16
[dmitry@debian][~/tmp/666/DBD-Oracle-1.16]


Не работает. Соответственно, что делать? :) Модули ставить через perl
-MCPAN -e shell ставить не хочется. Хочется именно пакеты собирать.

Спасибо за советы и помощь.

-- 
With wishes and regards,
Dmitriy Mikhailov

Reply to: