pille45: Wie kann ich weitere Module im XAMPP Perl-Adon nachladen?

Ich habe XAMPP für Windows Version 1.6.3a vor einer Weile auf einer eigenen Entwicklungspartition entpackt, mit dem Perl Addon veredelt und inzwischen 10 Websites drauf laufen - klappt super.
Nun brauche ich ein weiteres PERL-Modul von CPAN: XML-Writer-0.606 und möchte das nachinstallieren.

Ich bin jetzt in der Windows-Shell dort und komme nicht weiter:
E:\xampp\perl\bin>cpan

Auch das hilft mir nicht wirklich weiter:
cpan> help

Kannmir jemand einen Tipp geben und mir damit helfen wie ich das Modul von CPAN nachgeladen bekomme?
Danke!

  1. hi,

    Kannmir jemand einen Tipp geben und mir damit helfen wie ich das Modul von CPAN nachgeladen bekomme?

    Ich mach sowas auf meiner XP-Kiste so:

    D:>ppm install XML-Writer
    Installing package 'XML-Writer'...
    Bytes transferred: 10584
    Installing D:\Perl\html\site\lib\XML\Writer.html
    Installing D:\Perl\site\lib\XML\Writer.pm
    Writing D:\Perl\site\lib\auto\XML\Writer.packlist

    D:>

    Angekommen ist $VERSION = "0.4";

    Hotte

    --
    Wenn der Kommentar nicht zum Code passt, kann auch der Code falsch sein.
    1. Hallo Hotte,
      merci für die Antwort.
      Du benutzt Active Perl oder?

      Wie bindest Du die heruntergeladenen Module unter XAMPP für den Webserver ein?

      1. hi,

        Du benutzt Active Perl oder?

        D:>perl -v

        This is perl, v5.6.1 built for MSWin32-x86-multi-thread
        (with 1 registered patch, see perl -V for more detail)

        Copyright 1987-2001, Larry Wall

        Binary build 633 provided by ActiveState Corp. http://www.ActiveState.com
        Built 21:33:05 Jun 17 2002

        Perl may be copied only under the terms of either the Artistic License or the
        GNU General Public License, which may be found in the Perl 5 source kit.

        Complete documentation for Perl, including FAQ lists, should be found on
        this system using man perl' or perldoc perl'.  If you have access to the
        Internet, point your browser at http://www.perl.com/, the Perl Home Page.

        Wie bindest Du die heruntergeladenen Module unter XAMPP für den Webserver ein?

        Perlmodule binde ich in Perl-Script'n ein, nicht im Webserver.

        Hotte

        --
        Wenn der Kommentar nicht zum Code passt, kann auch der Code falsch sein.
        1. Hallo hotti!

          This is perl, v5.6.1

          Oh mein Gott...:

          Microsoft Windows [Version 6.0.6001]
          Copyright (c) 2006 Microsoft Corporation. Alle Rechte vorbehalten.

          C:>perl -v

          This is perl, v5.10.0 built for MSWin32-x86-multi-thread
          (with 5 registered patches, see perl -V for more detail)

          Copyright 1987-2007, Larry Wall

          Auf meinem Webhoster läuft 5.8.8 ...

          Viele Grüße aus Frankfurt/Main,
          Patrick

          --
          _ - jenseits vom delirium - _

             Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
          J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
        2. Perlmodule binde ich in Perl-Script'n ein, nicht im Webserver.

          Mein Frage war unpräzise.
          Ich mach n Beispiel:
          In der Shebang gebe ich den Pfad zum PERL-Inpreter an, der wäre ja dann derjenige, den Active Perl mitbringt.
          Wenn ich dann in meinem PERL-Skript mit der Shebang den PERL-Interpreter von Active State aufrufe und dann ein Modul in meinem Skript eingebunden habe, wird dann das von Active State Perl genommen?

          1. Hallo pille45!

            Wenn ich dann in meinem PERL-Skript mit der Shebang den PERL-Interpreter von Active State aufrufe und dann ein Modul in meinem Skript eingebunden habe, wird dann das von Active State Perl genommen?

            Ja. Perl benutzt @INC, um nach Modulen zu suchen. Bei einer Perl-Installation auf C:\ enthält @INC die Pfade:

            C:>perl -w
            print "@INC";
            ^Z
            C:/Perl/site/lib C:/Perl/lib .

            wobei "." für das Working Directory steht, sprich für das Verzeichnis, von wo aus Perl aufgerufen wurde (in dem Fall halt C:).

            Viele Grüße aus Frankfurt/Main,
            Patrick

            --
            _ - jenseits vom delirium - _

               Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
            J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
          2. achso, die shebang,

            In der Shebang gebe ich den Pfad zum PERL-Inpreter an, der wäre ja dann derjenige, den Active Perl mitbringt.

            Dieser Pfad ist mir Wurscht, mein Trick:

            Draußen auf dem Webserver habe ich folgende shebang:
            #!/usr/bin/perl

            Damit meine lokalen Scripts mit derselben shebang unter XP tun, habe ich auf dem Laufwerk, wo mein Apache installiert ist (LW c: bei mir), das Verzeichnis
            /usr/bin
            angelegt und dorthinein die perl.exe kopiert. Meine lokale Perl-Installation ist ansonsten auf Laufwerk d.

            Dieser Trick funktioniert auch mit dem Pfad der Passwortdatei für .htacces
            AuthUserFile /home/html/.htpassfile
            also auch hier ohne Angabe des Laufwerkbuchstaben.

            Hotte

            1. Hallo hotti!

              Draußen auf dem Webserver habe ich folgende shebang:
              #!/usr/bin/perl

              Bei meinem auch.

              Damit meine lokalen Scripts mit derselben shebang unter XP tun, habe ich auf dem Laufwerk, wo mein Apache installiert ist (LW c: bei mir), das Verzeichnis
              /usr/bin
              angelegt und dorthinein die perl.exe kopiert.

              Hatte ich nicht nötig (ScriptInterpreterSource registry).

              Viele Grüße aus Frankfurt/Main,
              Patrick

              --
              _ - jenseits vom delirium - _

                 Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
              J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
      2. Hallo pille45!

        Wie bindest Du die heruntergeladenen Module unter XAMPP für den Webserver ein?

        ? Wie meinen? Die Modulen werden nicht für den Webserver eingebunden, sondern in Deinen Skripten. Perl benutzt @INC dazu, sie zu finden. Wenn Dein Webserver weiß wo Perl ist, wird er diese Perl-Version benutzen (Shebang-Zeile soll dann natürlich nicht mehr #!E:\Xampp.... heißen, sondern ganz normal #!/usr/bin/perl wobei unter windows auch #!perlhuhn geht ;)

        Viele Grüße aus Frankfurt/Main,
        Patrick

        --
        _ - jenseits vom delirium - _

           Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
        J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
  2. Hallo pille45!

    Ich halte es nicht für ratsam, unter Windows mit dem von Xampp mitgebrachten Perl zu arbeiten. Besser ist mMn eine ActiveState-Perl-Installation, sogar ganz wo anders im System (zum Beispiel auf C:). Perl sollte im PATH sein, und hat den Vorteil, dass Du für Testzwecke Perl direkt von der Konsole aufrufen kannst.

    Dann kannst Du auch mit C:>ppm (ppm = perl package manager von ActiveState) Module nachinstallieren.

    Zumindest arbeite ich so mit meiner Entwicklungsumgebung.

    Viele Grüße aus Frankfurt/Main,
    Patrick

    --
    _ - jenseits vom delirium - _

       Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
    J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
    1. Hi Patrick,
      merci für die Antwort.

      Eine Nachfrage:

      Dann kannst Du auch mit C:>ppm (ppm = perl package manager von ActiveState) Module nachinstallieren.

      Zumindest arbeite ich so mit meiner Entwicklungsumgebung.

      Und wie machst Du das, wenn Du für die Entwicklung einen Webserver brauchst?

      1. Hallo pille45!

        Und wie machst Du das, wenn Du für die Entwicklung einen Webserver brauchst?

        Über die Konfiguration desselben. Ich stand Anfang 2oo8 vor dem selben Problem, wie Du: http://forum.de.selfhtml.org/archiv/2008/1/t164295/#m1070711 (Threadzwweig: http://forum.de.selfhtml.org/archiv/2008/1/t164295/#m1071350).

        Stichwort: ScriptInterpreterSource registry

        Viele Grüße aus Frankfurt/Main,
        Patrick

        --
        _ - jenseits vom delirium - _

           Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
        J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
        1. Stichwort: ScriptInterpreterSource registry

          Habe ich das richtig verstanden:
          Die Kommentierung in der httpd.conf beim Eintrag
          #ScriptInterpreterSource registry
          entfernen bewirkt, dass der Apache von XAMPP in der Windows Registry nachschaut und den dort enthaltenen Eintrag nutzt?
          Das würde ja wohl, wenn ich das auch richtig kapiert habe, durch die Installation von Active Perl dort reingeschrieben - oder?

          1. Hallo pille45!

            »» Stichwort: ScriptInterpreterSource registry
            Habe ich das richtig verstanden:
            Die Kommentierung in der httpd.conf beim Eintrag
            #ScriptInterpreterSource registry
            entfernen bewirkt, dass der Apache von XAMPP in der Windows Registry nachschaut und den dort enthaltenen Eintrag nutzt?
            Das würde ja wohl, wenn ich das auch richtig kapiert habe, durch die Installation von Active Perl dort reingeschrieben - oder?

            Ja. Siehe aber auch meine andere Antwort bzg. Shebang-Zeile.

            Viele Grüße aus Frankfurt/Main,
            Patrick

            --
            _ - jenseits vom delirium - _

               Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
            J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
            1. Ja. Siehe aber auch meine andere Antwort bzg. Shebang-Zeile.

              Welche meinst Du?

              1. Hallo pille45!

                »» Ja. Siehe aber auch meine andere Antwort bzg. Shebang-Zeile.
                Welche meinst Du?

                Die: https://forum.selfhtml.org/?t=185446&m=1230654.

                Viele Grüße aus Frankfurt/Main,
                Patrick

                --
                _ - jenseits vom delirium - _

                   Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
                J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
                1. Hallo Patrick,

                  danke - hab ichso weit kapiert.
                  Noch eine Nachfrage, weil ich Dich grad hier habe ;-)

                  Wenn ich mit Active State ein Module nachlade und in meinem Perl-Skript der Interpreter von Active State angegeben ist, wird dann dieses Modul genommen?

                  Danke für eine Antwort.

                  1. Hallo pille45!

                    Wenn ich mit Active State ein Module nachlade und in meinem Perl-Skript der Interpreter von Active State angegeben ist, wird dann dieses Modul genommen?
                    Danke für eine Antwort.

                    Die hattest Du bereits.

                    Viele Grüße aus Frankfurt/Main,
                    Patrick

                    --
                    _ - jenseits vom delirium - _

                       Diblom   [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
                    J'ai 10 ans! | Achtung Agentur! | Nichts ist unmöglich? Doch! | Heute schon gegökt?
                    1. Hi Patrick,

                      Die hattest Du bereits.

                      Danke - habe es auch gerade gesehen.

                      Grüße aus Berlin