Mailinglist Archive: opensuse-programming-de (37 mails)

< Previous Next >
Re: Perl: DBD-SQLite installieren
  • From: Ralph Müller <rmue@xxxxxx>
  • Date: Mon, 30 Jan 2006 22:10:41 +0100
  • Message-id: <1138655442.7537.46.camel@xxxxxxxxxxxxxxxxxxxxx>
Ich glaube wir haben das Rätsel zum größten Teil lösen können.
Nach einem allerersten Test mit connect und disconnect scheint
es jetzt zu funktionieren.

Am Montag, den 30.01.2006, 02:01 +0100 schrieb David Haller:
> Mach also bitte auch mal:
> perl Makefile.PL PREFIX=/tmp/dbitest LIB=/tmp/dbitest/lib verbose

Als ich Deinen Tip mit dem "verbose" an den Befehlsaufruf
hintendrangehängt habe ergab das Ergebnis nur ein zusätzliches
"Can't open verbose: No such file or directory at Makefile.PL line 24."

Daraufhin habe ich diese ominöse Zeile 24 von Makefile.PL des
DBI-Moduls gesucht. Der Anfang dieser Datei sieht so aus:
# -*- perl -*-
#
# $Id: Makefile.PL,v 11.20 2004/01/08 14:03:46 timbo Exp $
#
# Copyright (c) 1994-2002 Tim Bunce England
#
# See COPYRIGHT section in DBI.pm for usage and distribution rights.

BEGIN {
require 5.006_00;
unshift @INC, "lib";
}

if ($] < 5.008000) {
warn qq{\a\a\a
**********************************************************
Perl versions below 5.6.1 are no longer supported by the DBI.
Perl versions 5.6.x may fail during installation with a complaint
about the use of =head3 in the pod documentation.
Press return to continue...
**********************************************************
};
sleep 3;
my $pause = <>;
}


Und aaaarghhhh!, die Zeile "my $pause = <>" ist das Fatale. Sie frißt
nämlich meine schönen PREFIX und LIB - Parameter einfach weg! Kein
Wunder, daß ich davon im erzeugten Makefile nichts mehr gesehen habe.

Also diese Zeile gelöscht und anschließend ging DBI als auch DBD::SQLite
wunderbar (in priv.Verzeichnis) zu installieren.

Als letztes ungelöstes Geheimnis verbleibt für mich die Frage, was
sich der Autor/Maintainer der Datei Makefile.PL dabei wohl gedacht hat?
Auf den ersten Blick siehts für mich so aus als daß er vom Benutzer
einen Tastendruck abwarten wollte, aber irgendwie funktioniert das
offenbar ja nicht wenn noch etwas wie PREFIX o.ä. hintendranhängt.

Vielleicht werde ich später mal einen tieferen Perl-Einblick als heute
besitzen, und dann verstehen wieso er das dann ausgerechnet so gemacht
hat, und nicht z.B. vorher mit mehreren shift's erst die Parameter
weggenommen/gesichert hat.

> Mach das. Und zeig auch mal auf die Ausgabe von
> getent passwd `id -u` | cut -d: -f6

ergibt "/kunden/homepages/37/d19249310/htdocs"

> Denn wie gesagt: unterhalb von htdocs gehoert sowas nicht hin.

Werde ich versuchen anzupassen.

LG,
Ralph

PS: Ohne Dich David hätte ich vorher aufgegeben.



< Previous Next >
Follow Ups