Welches Problem hast Du denn? Wie sieht die Meldung aus?
Wie sieht der relevante Code aus?
Kannst Du mal ein Beispiel liefern, mit dem sich das Problem nachstellen lässt?
So richtig eindeutig und klar finde ich Deine Beschreibung nicht.
Was meinst Du mit "nicht bei ersten Durchlauf die subroutinen auswertet."?
Ein Versuch, es zu erraten:
Du könntest in Deinen Subroutinen an den relevanten Stellen auf die OS-Version testen.
Wenn es das richtige OS ist (und damit die Module geladen werden konnten), dann kannst Du die Funktionen der Module einsetzen...
more (5.0kb)
Alternativ könnte man auch im BEGIN-Block bei erfolgreichen Modul-Laden eine entsprechende Variable setzen,
und dann diese Variable prüfen. Das hätte den Vorteil, dass man nicht im gesamten Skript die Bedingung
$^O ne 'linux' fest kodiert, sondern nur im BEGIN-Block und dementsprechend die Variable setzt.
Last edited: 2011-07-10 01:26:45 +0200 (CEST)
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!