Johnny B.: Probleme beim Installieren eines Moduls

Beitrag lesen

So, zwei Stunden weitere Versuche und das Modul Pod-Simple findet immer noch Pod-Escapes nicht.

Ich habe versucht

export PERL5LIB=$HOME/local/lib/perl und ca. 357 andere Verzeichnis-Kombinationen

dann
perl Makefile.PL PREFIX=../../local LIB=$HOME/local/lib

egal, was ich in "LIB=" angebe, selbst den kompletten Pfad "$HOME/local/lib/perl/5.8.8/auto/Pod/Escapes", er findet es nicht.

in o.a. Pfad befindet sich nur eine Datei ".packlist"

Dann probierte ich dasselbe mit "$HOME/local/share", weil unter "$HOME/local/share/perl/5.8.8/Pod" eine Datei "Escapes.pm" liegt. Aber egal, ob mittels "export" oder "LIB=", er findet sie einfach nicht.

Dann habe ich die Datei Makefile.PL modifiziert:

<<<<< ORIGINAL >>>>>

This -*- perl -*- script writes the Makefile for Pod::Simple

Time-stamp: "2004-05-24 00:21:20 ADT"

See lib/ExtUtils/MakeMaker.pm for details of how to influence

the contents of the Makefile that is written.

require 5;

use strict;
use ExtUtils::MakeMaker;

WriteMakefile(
  NAME => 'Pod::Simple',
  VERSION_FROM => 'lib/Pod/Simple.pm',
  ABSTRACT_FROM => 'lib/Pod/Simple.pod',
  # INSTALLDIRS        => 'perl',
  PREREQ_PM    => {
   'Text::Wrap' => '98.112902',
   'Pod::Escapes' => '1.04',

# RT#29439
   'Test'         => '1.25',

# And finally, things I don't have any particular version in mind for:
   map {; $_ => 0 } qw[
    File::Spec File::Basename Cwd Config Carp overload Symbol strict
    constant integer File::Find Test::More
   ]
  },
);

package MY;

sub libscan
{ # Determine things that should *not* be installed
    my($self, $path) = @_;
    return '' if $path =~ m/~/;
    $path;
}

__END__
<<<<< ENDE >>>>>

Ich habe use lib "$HOME/local/perl" ausprobiert und "$HOME/local/lib/perl/5.8.8/auto/Pod/Escapes" und dasgleiche mit "share" - nix!

Abschließend habe ich versuche, Pod-Escapes mit
require "$HOME/local/share/perl/5.8.8/Pod/Escapes.pm";
einzubinden, aber auch dann findet er nix...

use lib "/home/vivnemhc/man/man3" bringt auch keinen Erfolg...

Daher meine Frage: wonach sucht er denn überhaupt und wo sucht er? Ich will das ja gerne verstehen und nicht blind im Heuhaufen herumstochern. Würde irgendwas jetzt funktioniert haben, dann könnte ich daraus Rückschlüsse ziehen, welche Angaben ich machen muß.

Ich denke, er sucht "Escapes.pm"? Oder in 'man/man3' die 'Pod::Escapes.3pm'?

Wenn ich use lib '/home/vivnemhc'; angebe, dann sind in dieser Angabe doch die drei Unterverzeichnisse 'lib, man und share' enthalten? Sucht er die nicht alle durch? Welche sind wichtig?

Manche Module installieren sich unter 'perl/5.8.8', andere unter 'perl/5.8.4' und dann jeweils in Unterverzeichnisse. Also muß ich doch das "Hauptverzeichnis" angeben, also $HOME/local/lib - oder $HOME/local/lib/perl?

Eine weitere Idee, aus der Verzweiflung geboren: ist es möglich, von meinem Windows-Rechner zuhause (wo ich Active-State-Perl installiert habe) ein Modul mittels CPAN auf dem Server in $HOME/local zu installieren?

Andere Idee: gibt es eine Möglichkeit, nachdem ich das Modul CPAN auf dem Server installiert habe, dort die CPAN-Shell zu nutzen (die von Perl mitgelieferte bricht ja leider mit in diesem Thread beschriebener Fehlermeldung ab).

Kann mir jemand weiterführende Lektüre empfehlen? Meistens lese ich in "Wie-installiere-ich-Perl-Module-Tutorials" immer dieselben Dinge, die bei mir alle mit Fehlermeldungen abbrechen. Aber irgendwas muß doch gehen?!

HEEEEEEEELP... :)