2013-04-23 14 views
9

Mam męczące do uruchamiania wielu zadań równolegle za pomocą skryptu perla, które używają równolegle: ForkManager.jak zainstalować równoległy-forkmanager w perlu

#!/usr/bin/perl -w 

use Parallel::ForkManager; 

my @make_obj = qw(
mode1_testlist 
mode1_testlist1 
mode1_testlist2 
); 

my $fm = $pm = Parallel::ForkManager-> new(3); 
foreach my $obj (@make_obj) { 
    $fm->start and next; 
    print("make regression MODE=1 MODELIST=$make_obj"); 
    $fm->finish(); 
} 

ale rzuca mi poniżej błędu.

nie można zlokalizować równoległy/ForkManager.pm w @ INC (@ INC zawiera: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/usr/lib/perl5/site_perl /5.8.8/usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8/usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8.) at parallel_run.pl linia 3. BEGIN nie powiodło się - kompilacja przerwana na parallel_run.pl linia 3.

Pobrałem Parallel-ForkManager-1.03.tar.gz, ale nie wiem gdzie to zatrzymać, mam na myśli sposób instalacji.

próbowałem Perl Makefile.PL & & make test & & make install

WARNING: META_MERGE is not a known parameter. 
WARNING: BUILD_REQUIRES is not a known parameter. 
WARNING: LICENSE is not a known parameter. 
Checking if your kit is complete... 
Looks good 
'BUILD_REQUIRES' is not a known MakeMaker parameter name. 
'LICENSE' is not a known MakeMaker parameter name. 
'META_MERGE' is not a known MakeMaker parameter name. 
Writing Makefile for Parallel::ForkManager 
cp lib/Parallel/ForkManager.pm blib/lib/Parallel/ForkManager.pm 
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"test_harness(0,'blib/lib', 'blib/arch')" t/*.t 
                          t/00-load.............ok 1/3 (in cleanup) Undefined subroutine 
&File::Path::remove_tree called at /h/altera_dump2/vjain419/regression_flow_bck 
/regression_flow/MSS1/hw/verif/top_/00e/tools/Parallel-ForkManager-1.03/blib 
/lib/Parallel /ForkManager.pm line 662. 
t/00-load.............ok 
t/01-utf8-all.........skipped 
    all skipped: Need utf8::all for this test crashing on Windows 
    t/02-callback.........Array found where operator expected at t/02-callback.t line 
    21,at end of line 
    (Do you need to predeclare explain?) 
    syntax error at t/02-callback.t line 21, near "explain @out" 
    xecution of t/02-callback.t aborted due to compilation errors. 
    # Looks like your test died before it could output anything. 
    t/02-callback.........dubious             
    Test returned status 255 (wstat 65280, 0xff00) 
    DIED. FAILED tests 1-2 
    Failed 2/2 tests, 0.00% okay 
    t/03-callback-data....Array found where operator expected at t/03-callback-data.t line 13, at end of line 
    (Do you need to predeclare explain?) 
    syntax error at t/03-callback-data.t line 13, near "explain @out" 
    Execution of t/03-callback-data.t aborted due to compilation errors. 
    # Looks like your test died before it could output anything. 
    t/03-callback-data....dubious             
    Test returned status 255 (wstat 65280, 0xff00) 
    DIED. FAILED test 1 
    Failed 1/1 tests, 0.00% okay 
    Failed Test   Stat Wstat Total Fail Failed List of Failed 
    t/02-callback.t  255 65280  2 4 200.00% 1-2 
    t/03-callback-data.t 255 65280  1 2 200.00% 1 
    1 test skipped. 
    Failed 2/4 test scripts, 50.00% okay. 3/6 subtests failed, 50.00% okay. 
    make: *** [test_dynamic] Error 255 

Odpowiedz

12

Wystarczy użyć

cpan Parallel::ForkManager 

Alternatywnie, należy wykonać następujące polecenie po upewnieniu się, masz jego zależności (POSIX, Przechowywanie, Plik :: Spec, Plik :: Temp, Plik :: Ścieżka 2.00 i Test :: Więcej 0,81_01) zainstalowane:

tar xvzf Parallel-ForkManager-1.03.tar.gz 
cd Parallel-ForkManager-1.03 
perl Makefile.PL && make test && make install 
+0

jestem instalowania go na zdalnym serwerze. kiedy używam komendy 'cpan', próbuję połączyć się z jakimś FTP! mój serwer nie jest podłączony do Internetu! – vjain419

+0

Zobacz aktualizację, a następnie. – ikegami

+0

Zmieniłem moje pytanie. Nie jestem w stanie ustalić, co jest nie tak, gdy użyłem drugiej opcji do zainstalowania – vjain419

2

jak niektóre komentarze na przyjętą odpowiedzi sugerują, że może być zależność brakuje. Następujące pracował dla mnie:

cpan test uaktualnienie :: Więcej

cpan Parallel :: ForkManager