roger: module unterhalb INC Verzeichnissen

Hallo,

um alle meine Module besser zu ordnen, habe ich ein Unterverzeichnis angelegt.
Nun gibt es zwei Möglichkeiten
1. in ändere die Verzeichnisse der INC Variable
2. ich gebe das Verzeichnis mit dem Modul an.

Eine Funktion eines Perlmodules wird von mir in einem C-Programm benutzt.

Bis jetzt sah es so aus
perl -Mtools -E 'meineFunktion()
Ich habe nun ein Verzeichnis mytools angelegt in dem ua. das Modul
tools liegt.
Ein
perl -Mmytools/tools -E 'meineFunktion()
funktioniert aber nicht.
Sollte aber so sein laut ein paar Beispielen.

Danke
    roger

  1. Schön, dass du uns das mitgeteilt hast. Hast du auch eine Frage oder nur ein enormes Mitteilungsbedürfnis?

    1. Morgen,

      Schön, dass du uns das mitgeteilt hast. Hast du auch eine Frage oder nur »» ein enormes Mitteilungsbedürfnis?

      ich weiß nicht was du einnimmst.... nimm bitte nicht mehr so viel davon. :-)

      Wie schon beschrieben

      perl -Mmytools/tools -E 'meineFunktion()
      funktioniert aber nicht.

      Wie muss es also lauten, wenn das Modul "tools" im Unterverzeichnis "mytools" liegt. ("mytools" liegt im Verzeichnis von INC@)

      Gruß
         roger

      1. ich weiß nicht was du einnimmst.... nimm bitte nicht mehr so viel davon. :-)

        Es gibt da wasm was mir ermöglicht, deine Frage zu erkennen, obwihl du sie gar nicht gestellt hast? Geil, wo bekomm ich das?

        Wie muss es also lauten, wenn das Modul "tools" im Unterverzeichnis "mytools" liegt. ("mytools" liegt im Verzeichnis von INC@)

        Schonmal nen absoluten Pfad versucht? Wenn das klappt, weisst du ja, wo du ansetzen musst.

  2. hi,

    1. in ändere die Verzeichnisse der INC Variable

    #>perl --help
    -Idirectory     specify @INC/#include directory (several -I's allowed)

    Also für die Kommandozeile.

    Hotti

    1. Du hast die korrekte Lösung. Es wäre vielleicht noch hilfreich, dem Fragenden zu sagen, warum die Option -M so nicht funktioniert.

      Sie nimmt hierarchische Packagenamen, keine Pfadnamen, z.B.

      -Mmytools::tools             ≡   use mytools::tools;
      -Mmytools::tools=einsymbol   ≡   use mytools::tools qw(einsymbol);

  3. Ich gebe dir den Rat, diese Ordnung zu überdenken. Verwende besser das Standardschema, das jeder andere benutzt; mit einem Phrase gesagt, mache deine Module „CPAN ready“. Die Praxis und Theorie ist erklärt in:

    http://p3rl.org/perlnewmod
    http://p3rl.org/perlmodstyle
    http://p3rl.org/perlmod
    http://p3rl.org/perlmodlib

    Für die Überleitung in das Standardschema kannst du http://search.cpan.org/dist/Module-Starter-PBP heranziehen.