|
|
Line 1: |
Line 1: |
− | = Perl =
| + | Has been moved to: http://blog.kr8.de/wiki-main/ |
− | Perl ist eine Scriptsprache, die von Larry Wall noch vor dem Boom des Internets (Worldwide Web) entwickelt wurde.
| |
− | | |
− | Von der Web-Gemeinde wurde Perl sofort vereinnahmt, um kleine ausführbare Code-Teile zur Dynamisierung von Web-Inhalten zu entwickeln.
| |
− | | |
− | Perl ist in der Unix/Linux-Welt zuhause und ist in Windows-Umgebungen nicht ganz so einfach zu handhaben. Der traditionelle Perl-Programmierer benutzt z.B. aus dem Perl heraus gerne Unix-Befehle bzw. Unix-Programme (z.B. '''ls''' oder '''date''' oder ....) und schon ist man unter Windows erst einmal auf die Nase gefallen.
| |
− | | |
− | Perl läuft traditionell von der Command-Line und wenn Perl unter einem Web-Server ([[Apache|Apache]]) laufen soll (CGI oder mod_perl), muss man schon etwas fummeln.
| |
− | Im Gegensatz dazu ist die neuere Scriptsprache PHP von vorne herein auf den Einsatz unter Web-Servern konzipiert. Als logische Konsequenz muss man sich bei PHP durchaus etwas anstrengen, um PHP von der Command-Line zu starten.
| |
− | | |
− | Unter Windows gibt es im Wesentlichen zwei Möglichkeiten mit Perl zu arbeiten:
| |
− | * Die Firma ActiveState hat eine freie und sehr verbreitete Perl-Windows-Version
| |
− | * Unter [[Cygwin|Cygwin]] kann man ein Quasi-Unix-Perl laufen lassen
| |
− | | |
− | == Installation Variante ActiveState ==
| |
− | * Definitive Software Library ID: '''Perl'''
| |
− | * Hersteller/Bezugsquelle: ActiveState http://www.activestate.com
| |
− | * Version 5.6.1.
| |
− | * Installationsordner: d:\perl
| |
− | * Konfiguration: s.u. (Perl Module)
| |
− | Von der Installation der aktuellen Version 5.8.2 (Jan 2004) wird aber beim Einsatz von TWiki abgeraten.
| |
− | | |
− | == Installation Variante Cygwin ==
| |
− | * Version 5.6.1. Aktuell (Jan 2004) ist Version 5.8.2, davon wird aber beim Einsatz von TWiki abgeraten.
| |
− | * Installationsordner: /bin/perl und /lib/perl5
| |
− | Bei der Installation von OpenSSHServer unter [[Cygwin|Cygwin]] wurde ohne zu fragen Perl 5.8.2 installiert. '''Das steht jetzt im Konflikt mit den Anforderungen für die TWikiInstallationWindows'''. Ausserdem müssen für Perl 5.8.2 einige Packages nach-installiert werden.
| |
− | | |
− | == Perl Module (Packages) ==
| |
− | Bei Perl muss man immer einige Packages/Module nachinstallieren.
| |
− | Das Nachinstallieren von Packages (z.B. Net::LDAP, Digest::SHA1, MIME::Base64, Test::More,...) wird durch Tool-Unterstützung stark vereinfacht. Es gibt zwei Tools dafür:
| |
− | * ActiveState: ppm (Perl Package Manager) (z.B. "install Digest-SHA, install Algorithm-Diff,..." )
| |
− | * Linux: CPAN (Comprehensive Perl Archive Network, aktuelle Version 1.76)
| |
− | | |
− | Unter ActivePerl kann man auch CPAN verwenden, da CPAN ein Modul von ActivePerl ist. Installieren muss man CPAN mit ppm. Wenn es dann installiert ist, kann man es aufrufen mit:
| |
− | <pre>
| |
− | perl -MCPAN -e shell;
| |
− | </pre>
| |
− | | |
− | Zur vollen Funktionsfähigkeit benötigt das CPAN-Modul folgende Unix-Programme:
| |
− | * gzip.exe
| |
− | * tar.exe
| |
− | * unzip.exe
| |
− | * [[make|make.exe]]
| |
− | * lynx.exe
| |
− | * wget.exe
| |
− | * ncftpget.exe
| |
− | * ftp.exe
| |
− | * more
| |
− | * eine Shell
| |
− | Diese Unix-Programme kann mach sich von [[Cygwin|Cygwin]] borgen.
| |
− | | |
− | === Probleme mit der Installation von Perl-Modulen ===
| |
− | ''<b>Die Nach-Installation des Perl-Modules Net::LDAP unter [[Cygwin|Cygwin]] gelang erst, nachdem in CPAN config.pm als [[Make|Make]]-Programm nicht das make.exe von [[Cygwin|Cygwin]], sondern nmake.exe (Microsoft Version 1.5) eingetragen wurde, sonst gab es einen Fehler.</b>'' Das Net::LDAP ist für die Funktionsfähigkeit des LDAP-Plugins bei [[TWiki|TWiki]] erforderlich.
| |
− | | |
− | In meinem Cygwin-Perl landen die Packages in den Ordnern:
| |
− | * /lib/perl5/site_perl/5.8.2/ oder
| |
− | * /lib/perl5/site_perl/cygwin-thread-multi-64int/auto/
| |
− | | |
− | == Installierte Perl Packages (Cygwin-Perl und ActiveState-Perl???) ==
| |
− | {| class=wikitable
| |
− | |-
| |
− | | '''Datum''' || '''Package''' || '''Verwendung''' || '''Bemerkung'''
| |
− | |-
| |
− | | 02.07.2004 || Algorithm::Diff || für [[TWiki|TWiki]] || 1.15
| |
− | |-
| |
− | | 01.07.2003 || DB_File || Berkeley DB für Suchmaschine PerlfectSearch ||
| |
− | |-
| |
− | | 28.12.2003 || Net::SMTP || für [[TWiki|TWiki]] || libnet.cfg
| |
− | |-
| |
− | | 28.12.2003 || Digest::SHA1 || für [[TWiki|TWiki]] ||
| |
− | |-
| |
− | | || Digest::MD5 || für PerlfectSearch ||
| |
− | |-
| |
− | | || HTML::Tagset || für PerlfectSearch ||
| |
− | |-
| |
− | | || HTML::Parser || für PerlfectSearch ||
| |
− | |-
| |
− | | 28.12.2003 || MIME::Base64 || für [[TWiki|TWiki]] und PerlfectSearch ||
| |
− | |-
| |
− | | || LWP::libwww-perl || für PerlfectSearch ||
| |
− | |-
| |
− | | 15.01.2004 || Net::LDAP || für [[TWikiLDAPPluginBeispiel|TWiki LDAP-Plugin]] ||
| |
− | |-
| |
− | | 15.01.2004 || Unicode::String || für [[TWikiLDAPPluginBeispiel|TWiki LDAP-Plugin]] ||
| |
− | |-
| |
− | | || URI || für PerlfectSearch ||
| |
− | |-
| |
− | | 01.01.2004 || p5-Palm || für [[Pdb2ldif|Pdb2ldif]] ||
| |
− | |}
| |
− | | |
− | == Anwendungen, die Perl benötigen ==
| |
− | {| class=wikitable
| |
− | |-
| |
− | | '''Anwendung''' || '''Erläuterung'''
| |
− | |-
| |
− | | [[AWStats]] || [[WebServer]]
| |
− | |-
| |
− | | [[Pdb2ldif]] || Palm-Adressbuch
| |
− | |-
| |
− | | [[PerlfectSearch]] || [[SuchMaschinen]]
| |
− | |-
| |
− | | [[TWiki]] || [[WikiWikiWeb]]
| |
− | |}
| |
− | | |
− | -- Main.DietrichKracht - 10 Jan 2004
| |