Почему я получаю: неопределенная подпрограмма
Я пытаюсь переместить существующие файлы Perl на новый сервер и получаю сообщение об ошибке (файл error_log). Работает на старом сервере.
Когда я получаю доступ к: http://2x.29.xx.xx/admin/web.pl
Я получаю ошибку:
[ошибка] Неопределенная подпрограмма &web_main::main, вызываемая в /var/www/path/web.pl строка 40.
Файлweb.pl, он выглядит примерно так:
#!/usr/bin/perl -w
use strict;
use warnings;
use lib '/var/www/web';
our $var = '/var/www/web';
our $var1;
our $var2;
use web_main qw($var $var1 $var2);
web_main::main(); # Line 40
Файлweb_main.pm (в /var/www/web), выглядит примерно так:
#!/usr/bin/perl -w
package web_main;
use strict;
use warnings;
sub main
{
# Lots of code here... removed for brevity
}
Не уверен, что пошло не так?
1 ответ
Я не очень разбираюсь в Perl, но, возможно, вам нужно экспортировать основную подпрограмму? Вы можете использовать Экспортер.