modul
Rolf
- perl
Hi,
in meinem script verwende ich MIME::Lite, aber mein provider unterstützt dieses modul nicht. kann ich das modul einfach mit in das cgi-bin verzeichnis laden, und es dann einfach -wie wenn es intaliert wäre- benutzen, oder muss ich was in @INC (glaub ich nennt sich das) ändern?
Danke,
Rolf
Hi Rolf!
Eine gute Ressource dazu ist http://www.xwolf.com.
Kurz:
lade Modul in /cgi-bin/MeinModul
Die Struktur sieht dann so aus:
/cgi-bin/MeinModul/MIME.pm
mit: use lib './MeinModul'; (./ steht fuer das aktuelle Verzeichnis, also cgi-bin)
und: use MIME::Lite
kannst Du es benutzen
Gruß
Thomas
Hi,
Eine gute Ressource dazu ist http://www.xwolf.com.
oder aber auch
perldoc perlmodinstall
Kurz:
Länger: Falsch ;-)
lade Modul in /cgi-bin/MeinModul
Die Struktur sieht dann so aus:/cgi-bin/MeinModul/MIME.pm
Das Modul heißt MIME::Lite, nicht MIME. Die Struktur wäre also
/cgi-bin/MIME/Lite.pm
mit: use lib './MeinModul'; (./ steht fuer das aktuelle Verzeichnis, also cgi-bin)
Nope. Erstens weißt Du im CGI-Kontext nicht, was '.' in diesem Moment zufällig ist, zweitens gibt es das Verzeichnis 'MeinModul' dort vermutlich nicht.
use lib '/complete/path/to/your/dir/';
und: use MIME::Lite
kannst Du es benutzen
Nicht unbedingt. Erstens halte ich das cgi-bin strukturell für ein eher ungeeignetes Verzeichnis, um Module einer Programmiersprache zu speichern, und zweitens könnte es nötig sein, Teile des Moduls zu kompilieren (weiß ich von MIME::Lite leider nicht).
Wie ich schon sagte:
perldoc perlmodinstall
Cheatah
Hi Cheatah!
Das Modul heißt MIME::Lite, nicht MIME. Die Struktur wäre also
/cgi-bin/MIME/Lite.pm
Hatte ich keine Ahnung. Dachte eher an package MIME::Lite in MIME.pm. Danke fuer Info
mit: use lib './MeinModul'; (./ steht fuer das aktuelle Verzeichnis, also cgi-bin)
Nope. Erstens weißt Du im CGI-Kontext nicht, was '.' in diesem Moment zufällig ist, zweitens gibt es das Verzeichnis 'MeinModul' dort vermutlich nicht.
use lib '/complete/path/to/your/dir/';
Danke fuer die Info. Kann man evtl. auch den Pfad on runtime festlegen? (z.B. mit PATH_INFO)
Gruß
Thomas
Hi,
Das Modul heißt MIME::Lite, nicht MIME. Die Struktur wäre also
/cgi-bin/MIME/Lite.pm
Hatte ich keine Ahnung. Dachte eher an package MIME::Lite in MIME.pm. Danke fuer Info
das _kann_ im Einzelfall insofern so sein, daß MIME im Script eingebunden wird und im folgenden auf MIME::Lite zugegriffen werden kann, weil MIME.pm dieses package definiert. Üblicherweise ist aber das '::' als '/' auf dem Filesystem zu sehen - insbesondere wenn es in der 'use'-Zeile steht.
use lib '/complete/path/to/your/dir/';
Danke fuer die Info. Kann man evtl. auch den Pfad on runtime festlegen? (z.B. mit PATH_INFO)
PATH_INFO hat eine andere Bedeutung (zusätzlicher ans Script angehängter Pfad, z.B. http://cheatah.net/cgi-bin/env.pl/testpfad). Im System kann man aber durchaus der PATH-Variable weitere Verzeichnisse zuweisen - leider muß ich an dieser Stelle im Detail passen, befrage dazu bitte einen Unix-Experten :-)
Cheatah
Danke an euch beide!
es funzt jetzt
cu
rolf