2012-11-23 30 views
2

我想將現有的perl文件移動到新的服務器,我得到一個錯誤(error_log文件)。它在舊服務器上工作。爲什麼我得到:未定義的子程序

當我訪問:http://2x.29.xx.xx/admin/web.pl

我得到一個錯誤:

[error] Undefined subroutine &web_main::main called at /var/www/path/web.pl line 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

我認爲你需要使用'web_main;'以及在web.pl – squiguy

+0

你不會得到從代碼錯誤。 – ikegami

+1

@squiguy,不,他正在加載web_main。 – ikegami

回答

0

我真的不Perl專家,但也許你需要導出主子程序?您可以使用Exporter

相關問題