PM DBD::mysql geht seit Upgrade auf X 1.6.7 und P 5.10.0 nix

Alles, was Perl betrifft, kann hier besprochen werden.

PM DBD::mysql geht seit Upgrade auf X 1.6.7 und P 5.10.0 nix

Postby ar_olc » 25. July 2008 09:45

Seit ich auf XAMPP Windows 1.6.7 und Perl Addon (5.10.0 Apache 2.2.9) upgegraded habe, gehen meine Perlskripte überhaupt nicht mehr.

Typischer Fehler:

install_driver(mysql) failed: Can't load 'C:/Programme/xampp/perl/site/lib/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:Das angegebene Modul wurde nicht gefunden at C:/Programme/xampp/perl/lib/DynaLoader.pm line 202.
at (eval 7) line 3
Compilation failed in require at (eval 7) line 3.
Perhaps a required shared library or dll isn't installed where expected
at D:/Wissensdatenbank/htdocs/cgi-bin/projekteingangsform.pl line 24

Um möglichst viele Fragen vorweg zu nehmen:
1. Die DLL ist da, wo sie sein soll. Die Fehlermeldung ist also für mich unerklärlich
2. Gleiche Fehler laufen auf, wenn ich die Skripte auf der Kommandozeile ablaufen lasse.

Ich hab schon den Perl-ordner gelöscht und das upgrade erneut installiert. Was soll ich bitte noch machen?

Grüße,
Moritz
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Postby deepsurfer » 25. July 2008 15:50

install_driver(mysql) failed: Can't load 'C:/Programme/xampp/perl/site/lib/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:Das angegebene Modul wurde nicht gefunden at

C:/Programme/xampp/perl/WO IST site HIN/lib/DynaLoader.pm line 202.
at (eval 7) line 3

Dei anweisung wo er es holen soll ist der pfad /site/ zuviel
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
XAMPP Version: 5.6.3
Operating System: Win-XP / Win7 / Linux -Debian

Postby ar_olc » 25. July 2008 16:10

deepsurfer wrote:install_driver(mysql) failed: Can't load 'C:/Programme/xampp/perl/site/lib/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:Das angegebene Modul wurde nicht gefunden at

C:/Programme/xampp/perl/WO IST site HIN/lib/DynaLoader.pm line 202.
at (eval 7) line 3

Dei anweisung wo er es holen soll ist der pfad /site/ zuviel


Versteh' ich nicht ganz. Er findet ja die mysql.dll nicht. Und die liegt bei mir in
c\Programme\xampp\perl\site\lib\DBD\mysql[/]

und der Dynaloader.pm liegt, wie auch in der Fehlermeldung richtig ausgegeben unter:
[b]c\Programme\xampp\perl\lib


Auch habe ich ja eine jungfräuliche Installation. Ich habe nix verschoben und keine Pfade eigenmächtig geändert. Soll ich den Dynaloader.pm nach "site/lib" verschieben?
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Ich hänge leider immer noch.

Postby ar_olc » 28. July 2008 14:40

Was muss ich ändern,

damit die DLL akzeptiert wird?

Mfg,
Moritz Kaiser
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Postby deepsurfer » 29. July 2008 11:42

Uppps war wohl was zu schnell von mir...

Ok...die Fehlermeldun besagt das der DynaLoader in Pfad sowieo in zeile 202 den mysql:dll aufruf nicht durchführen kann weil er den mysql.dll in dem pfad nicht findet

Can't load 'C:/Programme/xampp/perl/site/lib/auto/DBD/mysql/mysql.dll'
bitte genau prüfen ob die mysql.dll auch in diesem Pfad liegt, mit "site".

Ansonsten hab ich jetzt auch eine Denkblockade.
Hast du ein eigenes Script oder benutzt du eine Apllikation die man sich zum gegencheck downloaden kann (link zum autor)
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
XAMPP Version: 5.6.3
Operating System: Win-XP / Win7 / Linux -Debian

Postby ar_olc » 30. July 2008 13:21

deepsurfer wrote:Uppps war wohl was zu schnell von mir...

Can't load 'C:/Programme/xampp/perl/site/lib/auto/DBD/mysql/mysql.dll'
bitte genau prüfen ob die mysql.dll auch in diesem Pfad liegt, mit "site".


Ja, die liegt da.

Ansonsten hab ich jetzt auch eine Denkblockade.
Hast du ein eigenes Script oder benutzt du eine Apllikation die man sich zum gegencheck downloaden kann (link zum autor)


Großes Hexenwerk ist in meinem Skript nicht drin.

Code: Select all
#!c:\Programme\xampp\perl\bin\perl.exe -w

use strict;            # Führt bei einigen Warnings zum Abbruch.
# use diagnostics;         # Zum Debuggen. Im Produktivbetrieb auskommentieren.
use CGI;            # Common Gateway Interface, erleichtert Web-Programmierung.
use CGI::Carp qw(fatalsToBrowser);
use DBI;            # Generisches Datenbankinterface, benötigt für mysql (Projektdb)
use Date::Parse;
use POSIX qw(strftime);

use OLCprj;
# do olc_funktionen;

# open(LOG,   ">> D:\\Wissensdatenbank\\htdocs\\olc\\forms.log");
# print LOG "Beginne Logging für projekteingangsform.pl\n";

my $cgi = new CGI;
my $form_gut=-1;
my @Feldnamen = $cgi->param();
my $projdsn="DBI:mysql:database=olcproj;host=localhost";
my $projuser="zensiert";
my $projpw="auchzensiert";

my $pdbh= DBI->connect($projdsn, $projuser, $projpw)
   or die "Could not connect to database: " . DBI->errstr


Er kommt genau bis zur letzen Zeile. Der Rest vom Skript sollte also keine Rolle spielen.

der Fehler sieht dann so aus:
Code: Select all
install_driver(mysql) failed: Can't load 'C:/Programme/xampp/perl/site/lib/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:Das angegebene Modul wurde nicht gefunden at C:/Programme/xampp/perl/lib/DynaLoader.pm line 202.
 at (eval 7) line 3
Compilation failed in require at (eval 7) line 3.
Perhaps a required shared library or dll isn't installed where expected
 at D:/Wissensdatenbank/htdocs/cgi-bin/projekteingangsform.pl line 24


Konkret gibt es keinen Fehler beim "use DBI", aber dann beim "DBI->connect".
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Ach ja, noch was:

Postby ar_olc » 30. July 2008 13:36

Wenn ich #use diagnostics; aktiviere (# weg), dann krieg ich noch folgende Fehler (aus dem Apache Log diesmal):

Code: Select all
[Wed Jul 30 14:21:54 2008] [error] [client zensiert.78] Premature end of script headers: projekteingangsform.pl, referer: http://mch-olc-server/olc_htm/index.html
[Wed Jul 30 14:21:54 2008] [error] [client zensiert.78] couldn't find diagnostic data in \\xampp\\perl\\lib/pods/perldiag.pod C:/Programme/xampp/perl/site/lib C:/Programme/xampp/perl/lib . D:/Wissensdatenbank/htdocs/cgi-bin/projekteingangsform.pl at C:/Programme/xampp/perl/lib/diagnostics.pm line 268, <POD_DIAG> line 647.\r, referer: http://mch-olc-server/olc_htm/index.html
[Wed Jul 30 14:21:54 2008] [error] [client zensiert.78] Compilation failed in require at D:/Wissensdatenbank/htdocs/cgi-bin/projekteingangsform.pl line 4, <POD_DIAG> line 647.\r, referer: http://mch-olc-server/olc_htm/index.html
[Wed Jul 30 14:21:54 2008] [error] [client zensiert.78] BEGIN failed--compilation aborted at D:/Wissensdatenbank/htdocs/cgi-bin/projekteingangsform.pl line 4, <POD_DIAG> line 647.\r, referer: http://mch-olc-server/olc_htm/index.html


Das heißt eigentlich, dass mehr im Argen liegt, oder?
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Postby deepsurfer » 30. July 2008 13:51

Probier mal bitte folgende Anweisung im SheBang und zusatzzeilen

#!"\xampp\perl\bin\perl.exe" -w
use CGI::Carp qw(fatalsToBrowser);
use warnings;

use strict;


Hier sollte die Fehlermeldung evetuell anders sein, aber mit diesen Zusätzen habe ich auch einige Muckefuck dinge zum laufen gebracht.
(klingt komisch , ist aber so)
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
XAMPP Version: 5.6.3
Operating System: Win-XP / Win7 / Linux -Debian

Wird leider nicht besser

Postby ar_olc » 30. July 2008 13:59

Code: Select all
[Wed Jul 30 14:57:06 2008] [error] [client zensiert.78] (OS 3)Das System kann den angegebenen Pfad nicht finden.  : couldn't create child process: 720003: projekteingangsform.pl, referer: http://mch-olc-server/olc_htm/index.html
[Wed Jul 30 14:57:06 2008] [error] [client zensiert.78] (OS 3)Das System kann den angegebenen Pfad nicht finden.  : couldn't spawn child process: D:/Wissensdatenbank/htdocs/cgi-bin/projekteingangsform.pl, referer: http://mch-olc-server/olc_htm/index.html
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Postby deepsurfer » 30. July 2008 16:29

Sind die PERL Scripte mit einem FTP Programm geholt worden, die Übermittlung von PERLscripten muss im TEXT-Modus geschehen.

Klingt jetzt etwas verwegen, weil eigentlich bei einem Download es egal ist.

Zweiter Gedanke der mir durchjagt:
Hast Du an den Dateien irgendwas an den berechtigungen geändert ?


Und jetzt, soooo höffe ich die Lösung.......
*.pl Dateien sind im XAMPP nicht an den Perl Interpreter verankert.

Dazu einfach die c:\programme\xampp\apache\conf\httpd.conf Öffnen (normelr texteditor reicht) und nach

Code: Select all
    #
    # AddHandler allows you to map certain file extensions to "handlers":
    # actions unrelated to filetype. These can be either built into the server
    # or added with the Action directive (see below)
    #
    # To use CGI scripts outside of ScriptAliased directories:
    # (You will also need to add "ExecCGI" to the "Options" directive.)
    #
    AddHandler cgi-script .cgi


Schauen und hinter dem " .cgi " noch mit leertaste " .pl " hinzufügen.

APache neu starten und Script aufrufen.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
XAMPP Version: 5.6.3
Operating System: Win-XP / Win7 / Linux -Debian

Postby ar_olc » 01. August 2008 11:01

deepsurfer wrote:Sind die PERL Scripte mit einem FTP Programm geholt worden, die Übermittlung von PERLscripten muss im TEXT-Modus geschehen.


Die Skripte hab ich selber verbrochen.

Klingt jetzt etwas verwegen, weil eigentlich bei einem Download es egal ist.

Zweiter Gedanke der mir durchjagt:
Hast Du an den Dateien irgendwas an den berechtigungen geändert ?

Hmm, nein.

Und jetzt, soooo höffe ich die Lösung.......
*.pl Dateien sind im XAMPP nicht an den Perl Interpreter verankert.

Dazu einfach die c:\programme\xampp\apache\conf\httpd.conf Öffnen (normelr texteditor reicht) und nach

Code: Select all
    #
    # AddHandler allows you to map certain file extensions to "handlers":
    # actions unrelated to filetype. These can be either built into the server
    # or added with the Action directive (see below)
    #
    # To use CGI scripts outside of ScriptAliased directories:
    # (You will also need to add "ExecCGI" to the "Options" directive.)
    #
    AddHandler cgi-script .cgi


Schauen und hinter dem " .cgi " noch mit leertaste " .pl " hinzufügen.

APache neu starten und Script aufrufen.


Das kann's nicht sein, weil die Skripte auch nicht laufen, wenn ich sie von der Kommandozeile aus aufrufe. Es kommen die gleichen Fehlermeldungen.
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Postby goehte » 06. August 2008 22:22

Der Fehler liegt definitiv an XAMPP 1.6.7 oder dem Perl Addon 5.10.0-2.2.9.

Ich habe XAMPP 1.6.6a mit dem Perl Addon 5.8.8-2.2.8 installiert und die DBI Schnittstelle funktioniert.

Leider bin ich neu bei Apachefriends bzw. XAMPP und bitte jemand anderen dies weiter zu untersuchen und in die Bug-List einzutragen (wo auch immer diese zu finden ist!?).

Grüße!
goehte
 
Posts: 1
Joined: 06. August 2008 22:17

Postby deepsurfer » 07. August 2008 07:52

Die Jungs haben Deinen Hinweis sicherlich schon in die Liste eingetragen .(werde es aber im Developer Bereich nochmal ein Link hierher setzen)

Eine BUG Liste wurde (bin mir aber jetzt nicht ganz sicher) wieder eingestellt mangels Interesse aller Beteiligten auch währende der Betaphasen.
chirio Deep
Wie sagte einst der MCP aus Tron auf dem Bildschirm zu schreiben Pflegte
" ... end of communication ... "
User avatar
deepsurfer
AF Moderator
 
Posts: 6440
Joined: 23. November 2004 10:44
Location: Cologne
XAMPP Version: 5.6.3
Operating System: Win-XP / Win7 / Linux -Debian

Wie weiter?

Postby ar_olc » 07. August 2008 08:27

Die Wahrscheinlichkeit ist groß, dass der Wurm im Perl-Addon liegt. Bis das von der Wurzel her gelöst ist, muss ich eine Umgehungslösung finden.

Daher die Frage:
Wie kann ich XAMPP downgraden?

Grüße,
Moritz
ar_olc
 
Posts: 10
Joined: 09. July 2007 15:32

Postby AndiH » 26. August 2008 22:13

Ich habe gleiches Problem mit XAMPP Windows 1.6.7 und Perl Addon (5.10.0 Apache 2.2.9) .
Gibt es bereits eine Lösung für dieses Problem?

Andi
AndiH
 
Posts: 1
Joined: 26. August 2008 22:03

Next

Return to Perl

Who is online

Users browsing this forum: No registered users and 2 guests