Leser: 4
|< 1 2 3 >| | 24 Einträge, 3 Seiten |
Quote\n\nJetzt erklaere ich mal, wie man ein vernuenftiges Modul (ohne XS, nur Perl) namens Strat.pm schreibt (das man auch auf CPAN oder so veroeffentlichen koennte)
1. Modulrahmen erstellen:
C:\module>h2xs -XA -n Strat
Writing Strat/Strat.pm
Writing Strat/Makefile.PL
Writing Strat/README
Writing Strat/test.pl
Writing Strat/Changes
Writing Strat/MANIFEST
[font]
Hat im Verzeichnis ./Strat einige Dateien erstellt. Wechseln wir mal dort rein ( cd Strat).
2. Funktionen oder Methoden einbauen
Jetzt hat man einen Rahmen, in den man sein Zeug einbauen kann. (Achtung: Bei Perl.5.6.1 wird in dem Modul our verwendet, ein Befehl, den es bei perl5.0 noch nicht gibt).
Fuegen wir also mal an die Stelle in der Datei Strat.pm, an der steht
# Preloaded methods go here
das folgende ein:
sub Printh*llo {
my ($param) = @_;
print "h*llo, $param\n";
}
Dann loeschen wir oben die Liste mit den Exporttags, sodass dort steht:
our %EXPORT_TAGS = ();
our @EXPORT = qw();
(Wir wollen doch nicht den Namensraum des Hauptprogrammes verunreinigen, oder?)
Dann schauen wir ganz nach unten nach dem Punkt , und wir sehen dort ein Grundgeruest fuer die Moduldokumentation. Dort fuegen wir die Dokumentation zu diesem Modul ein (bitte auf Englisch, damit das Modul auch international verwendet werden kann, ok?)
Speichern nicht vergessen.
3. Testen, ob das Modul korrekt ist:
C:\module\Strat>perl -e "use Strat; &Strat::Printh*llo('strat')"
h*llo, strat
4. Uebersetzen und testen
C:\module\Strat>perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Makefile for Strat
C:\module\Strat>nmake
Microsoft ® Program Maintenance Utility Version 1.50
Copyright © Microsoft Corp 1988-94. All rights reserved.
cp Strat.pm blib\lib\Strat.pm
C:\module\Strat>nmake test
Microsoft ® Program Maintenance Utility Version 1.50
Copyright © Microsoft Corp 1988-94. All rights reserved.
C:\Perl\bin\perl.exe -Iblib\arch -Iblib\lib -IC:\Perl\lib -IC:\Perl\lib test.
pl
1..1
ok 1
5. zu einem tar-Archiv zusammenpacken
C:\module\Strat>nmake tardist
Microsoft ® Program Maintenance Utility Version 1.50
Copyright © Microsoft Corp 1988-94. All rights reserved.
C:\Perl\bin\perl.exe -IC:\Perl\lib -IC:\Perl\lib -MExtUtils::Command -e rm_rf
Strat-0.01
C:\Perl\bin\perl.exe -IC:\Perl\lib -IC:\Perl\lib -MExtUtils::Manifest=manicop
y,maniread -e "manicopy(maniread(),'Strat-0.01', 'best');"
mkdir Strat-0.01
tar cvf Strat-0.01.tar Strat-0.01
Strat-0.01/
Strat-0.01/Changes
Strat-0.01/Makefile.PL
Strat-0.01/MANIFEST
Strat-0.01/README
Strat-0.01/Strat.pm
Strat-0.01/test.pl
C:\Perl\bin\perl.exe -IC:\Perl\lib -IC:\Perl\lib -MExtUtils::Command -e rm_rf
Strat-0.01
gzip --best Strat-0.01.tar
Jetzt hat man eine Datei namens Strat-0.01.tar, die man wie andere Module von CPAN installieren kann.
Unter Unix verwendet man anstelle von nmake einfach make...
So baut man ein Modul
Gruss, perl -le "s==*F=e=>y~\*martinF~stronat~=>s~[^\w]~~g=>chop,print"
http://www.fabiani.net/
1;
|< 1 2 3 >| | 24 Einträge, 3 Seiten |