On Wednesday 13 December 2006 18:40, Igor Sysoev wrote:
On Wed, 13 Dec 2006, Andrei Nigmatulin wrote:
On Wednesday 13 December 2006 18:15, Igor Sysoev wrote:
On Wed, 13 Dec 2006, Znikus M wrote:
Подскажите, пожалуйста, что я делаю не так устанавливая perl_module для
nginx?
...
Тупо копирую nginx.pm в один из каталогов @INC;
Это неправильно, там ещё есть nginx.so и nginx.bs
Игорь, а как можно установить nginx.pm, .so и .bs в произвольный каталог
? У меня /usr/lib/perl5 и $prefix для nginx - разные FS с разным
доступом, и из-за этого сложности с установкой. Я попробовал собрать
nginx с --with-perl_modules_path=/path и вот таким патчем:
--- nginx-0.5.2.orig/src/http/modules/perl/Makefile.PL 2006-08-30
10:39:17.000000000 +0000
+++ nginx-0.5.2/src/http/modules/perl/Makefile.PL 2006-12-13
14:49:54.000000000 +0000
@@ -32,6 +32,6 @@ WriteMakefile(
},
PM => {
- 'nginx.pm' => '$(INST_LIBDIR)/nginx.pm'
+ 'nginx.pm' => '$(LIB)/nginx.pm'
}
);
Вроде бы работает так, как надо. Насколько это корректно ?
А почему --with-perl_modules_path=PATH без патча не помогает ?
Этого я не знаю. Без патча установка заканчивается так (я убрал "NOECHO=@",
чтобы были видны команды):
/usr/bin/perl "-MExtUtils::Command::MM" -e pod2man "--" --section=3
--perm_rw=644 nginx.pm blib/man3/nginx.3pm
/bin/sh -c true
/usr/bin/perl -MExtUtils::Install -e 'install({@ARGV}, '\''0'\'', 0,
'\''0'\'');'
read /usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi/auto/nginx/.packlist
write
/usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi/auto/nginx/.packlist
blib/lib /usr/lib/perl5/site_perl/5.8.6 blib/arch /usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi blib/bin /usr/bin blib/script /usr/bin blib/man1 /usr/share/man/man1 blib/man3 /usr/share/man/man3
Warning: You do not have permissions to install
into /usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi
at /usr/lib/perl5/5.8.6/ExtUtils/Install.pm line 114.
Files found in blib/arch: installing files in blib/lib into architecture
dependent library tree
Writing
/usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi/auto/nginx/.packlist
Can't open
file
/usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi/auto/nginx/.packlist:
Permission denied at /usr/lib/perl5/5.8.6/ExtUtils/Install.pm line 209
make[2]: *** [pure_site_install] Error 255
make[2]: Leaving directory
`/home/anight/nginx.distr/nginx-0.4.14/objs/src/http/modules/perl'
make[1]: *** [install_perl_modules] Error 2
make[1]: Leaving directory `/home/anight/nginx.distr/nginx-0.4.14'
make: *** [install] Error 2
А с патчем .packlist пишется туда же, где и модули ?
Игорь Сысоев
http://sysoev.ru