Re: Perl: DBD-SQLite installieren

Ralph Müller <[email protected]>
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Hallo David, hallo Liste,

also, zuerst habe ich nun ein Verzeichnis
/homepages/37/d19249310/htdocs/bko/myLibs/
erzeugt. Und das frische DBI-Modul von CPAN liegt nun entpackt im
Verzeichnis /homepages/37/d19249310/htdocs/bko/tmp/DBI-1.50/


Am Sonntag, den 29.01.2006, 06:22 +0100 schrieb David Haller:
> Wie genau ist dein Aufruf von

> .... perl Makefile.PL ...

[u6911372: /homepages/37/d19249310/htdocs/bko/tmp/DBI-1.50]$ 
perl Makefile.PL \
PREFIX=/kunden/homepages/37/d19249310/htdocs/bko/myLibs \
LIB=/kunden/homepages/37/d19249310/htdocs/bko/myLibs

Creating DBI::PurePerl    test variant: t/zvpp_72childhandles.t 
[...]
Creating DBI::PurePerl    test variant: t/zvpp_80proxy.t 
Checking if your kit is complete...
Looks good
Writing Makefile for DBI

**************************************************************************
  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...
**************************************************************************
Can't open PREFIX=/kunden/homepages/37/d19249310/htdocs/bko/myLibs: No
such file or directory at Makefile.PL line 24.
Can't open LIB=/kunden/homepages/37/d19249310/htdocs/bko/myLibs: No such
file or directory at Makefile.PL line 24.

    I see you're using perl 5.006001 on i386-linux, okay.
    Remember to actually *read* the README file!
    Use  'make' to build the software (dmake or nmake on Windows).
    Then 'make test' to execute self tests.
    Then 'make install' to install the DBI and then delete this working
    directory before unpacking and building any DBD::* drivers.


> .... make ...

make

/usr/bin/perl -I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1
-MExtUtils::Command -e mkpath blib/lib/DBI
rm -f blib/lib/DBI/Changes.pm
cp Changes blib/lib/DBI/Changes.pm
/usr/bin/perl -I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1
-MExtUtils::Command -e mkpath blib/lib/DBI
rm -f blib/lib/DBI/Roadmap.pm
cp Roadmap.pod blib/lib/DBI/Roadmap.pm
/bin/sh -c true
cp Driver_xst.h blib/arch/auto/DBI/Driver_xst.h
[...]
cp lib/DBD/Sponge.pm blib/lib/DBD/Sponge.pm
/usr/bin/perl -p -e "s/~DRIVER~/Perl/g" ./Driver.xst > Perl.xsi
/usr/bin/perl -I/usr/lib/perl/5.6.1
-I/usr/share/perl/5.6.1 /usr/share/perl/5.6.1/ExtUtils/xsubpp
-typemap /usr/share/perl/5.6.1/ExtUtils/typemap -typemap typemap Perl.xs
> Perl.xsc && mv Perl.xsc Perl.c
cc -c  -DDEBIAN -fno-strict-aliasing -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.50\"
-DXS_VERSION=\"1.50\" -fPIC -I/usr/lib/perl/5.6.1/CORE -W -Wall
-Wpointer-arith -Wbad-function-cast -Wno-comment -Wno-sign-compare
-Wno-cast-qual -DDBI_NO_THREADS Perl.c
/usr/bin/perl -I/usr/lib/perl/5.6.1
-I/usr/share/perl/5.6.1 /usr/share/perl/5.6.1/ExtUtils/xsubpp
-typemap /usr/share/perl/5.6.1/ExtUtils/typemap -typemap typemap DBI.xs
> DBI.xsc && mv DBI.xsc DBI.c
cc -c  -DDEBIAN -fno-strict-aliasing -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.50\"
-DXS_VERSION=\"1.50\" -fPIC -I/usr/lib/perl/5.6.1/CORE -W -Wall
-Wpointer-arith -Wbad-function-cast -Wno-comment -Wno-sign-compare
-Wno-cast-qual -DDBI_NO_THREADS DBI.c
Running Mkbootstrap for DBI ()
chmod 644 DBI.bs
rm -f blib/arch/auto/DBI/DBI.so
LD_RUN_PATH="" cc  -shared -L/usr/local/lib DBI.o  -o
blib/arch/auto/DBI/DBI.so     
chmod 755 blib/arch/auto/DBI/DBI.so
cp DBI.bs blib/arch/auto/DBI/DBI.bs
chmod 644 blib/arch/auto/DBI/DBI.bs
/usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl/5.6.1
-I/usr/share/perl/5.6.1 dbiproxy.PL dbiproxy
Extracted dbiproxy from dbiproxy.PL with variable substitutions.
cp dbiproxy blib/script/dbiproxy
/usr/bin/perl -I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1
-MExtUtils::MakeMaker -e "MY->fixin(shift)" blib/script/dbiproxy
/usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl/5.6.1
-I/usr/share/perl/5.6.1 dbiprof.PL dbiprof
Extracted dbiprof from dbiprof.PL with variable substitutions.
cp dbiprof blib/script/dbiprof
/usr/bin/perl -I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1
-MExtUtils::MakeMaker -e "MY->fixin(shift)" blib/script/dbiprof
Manifying blib/man3/Roadmap.3pm
[...]
Manifying blib/man3/DBD::Sponge.3pm
Perl.xs: In function `dbd_st_rows':
Perl.xs:39: warning: unused parameter `h'
Perl.c: In function `XS_DBD__Perl__dr_data_sources':
[...]
Perl.c: In function `boot_DBD__Perl':
Perl.c:1064: warning: unused parameter `cv'
Perl.c: At top level:
dbipport.h:529: warning: `my_sv_2pvbyte' defined but not used
DBI.xs: In function `dbih_clearcom':
DBI.xs:1183: warning: unused variable `Perl___notused'
[...]

> .... make test ...

make test

/bin/sh -c true
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib
-I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1 -e 'use Test::Harness
qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/01basics..........ok, 4/131 skipped: developer tests
t/02dbidrv..........ok
t/03handle..........ok
t/04mods............ok
t/05thrclone........skipped: this linux perl 5.006001 not configured to
support iThreads
t/06attrs...........ok
[...]
t/11fetch...........ok
t/14utf8............skipped: Requires perl 5.8
t/15array...........ok
[...]
t/70callbacks.......ok
t/72childhandles....skipped: Scalar::Util::weaken not available
t/80proxy...........ok
t/pod...............skipped: Test::Pod 1.00 required for testing POD
t/zvpp_01basics.....ok, 6/131 skipped: various reasons
t/zvpp_02dbidrv.....ok, 10/51 skipped: various reasons
t/zvpp_03handle.....ok, 76/135 skipped: various reasons
t/zvpp_04mods.......ok
t/zvpp_05thrclone...skipped: this linux perl 5.006001 not configured to
support iThreads
t/zvpp_06attrs......ok, 7/137 skipped: various reasons
t/zvpp_07kids.......skipped: $h->{Kids} attribute not supported for
DBI::PurePerl
t/zvpp_08keeperr....ok
t/zvpp_09trace......ok
t/zvpp_10examp......ok, 39/253 skipped: various reasons
t/zvpp_11fetch......ok
t/zvpp_14utf8.......skipped: Requires perl 5.8
t/zvpp_15array......ok
t/zvpp_20meta.......ok
t/zvpp_30subclass...ok
t/zvpp_40profile....skipped: profiling not supported for DBI::PurePerl
t/zvpp_41prof_dump..skipped: profiling not supported for DBI::PurePerl
t/zvpp_42prof_data..skipped: profiling not supported for DBI::PurePerl
t/zvpp_43profenv....skipped: profiling not supported for DBI::PurePerl
t/zvpp_50dbm........ok
t/zvpp_60preparse...skipped: preparse not supported for DBI::PurePerl
t/zvpp_70callbacks..skipped: $h->{Callbacks} attribute not supported for
DBI::PurePerl
t/zvpp_72childhandles.skipped: Scalar::Util::weaken not available
t/zvpp_80proxy......skipped: DBD::Proxy currently has a problem under
DBI::PurePerl
All tests successful, 15 tests and 142 subtests skipped.
Files=49, Tests=2335, 12 wallclock secs ( 7.23 cusr +  1.06 csys =  829
CPU)
PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib
-I/usr/lib/perl/5.6.1 -I/usr/share/perl/5.6.1 test.pl
test.pl 
DBI test application $Revision: 11.7 $
Switch: DBI 1.50 by Tim Bunce, 1.50
Available Drivers: CSV, DBM, ExampleP, File, Proxy, Sponge, XBase, mysql
dbi:ExampleP:: testing 5 sets of 20 connections:
Connecting... 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
Disconnecting...
Connecting... 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
Disconnecting...
Connecting... 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
Disconnecting...
Connecting... 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
Disconnecting...
Connecting... 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
Disconnecting...
Made 100 connections in  0 wallclock secs ( 0.01 usr +  0.00 sys =  0.01
CPU)
Testing handle creation speed...
16666 NullP sth/s perl 5.006001 i386-linux (gcc 2.95.4 -O2)
test.pl done
Using /homepages/37/d19249310/htdocs/bko/tmp/DBI-1.50/blib


> .... make install ...

make install

/bin/sh -c true
mkdir /usr/local/lib/perl/5.6.1: Permission denied
at /usr/share/perl/5.6.1/ExtUtils/Install.pm line 81
make: *** [pure_site_install] Error 255




Hier nun das Makefile von Zeile 32 bis Zeile 89:

# They may have been overridden via Makefile.PL or on the command line
AR = ar
CC = cc
CCCDLFLAGS = -fPIC
CCDLFLAGS = -rdynamic
DLEXT = so
DLSRC = dl_dlopen.xs
LD = cc
LDDLFLAGS = -shared -L/usr/local/lib
LDFLAGS =  -L/usr/local/lib
LIBC = /lib/libc-2.2.5.so
LIB_EXT = .a
OBJ_EXT = .o
OSNAME = linux
OSVERS = 2.4.28-es
RANLIB = :
SO = so
EXE_EXT = 
FULL_AR = /usr/bin/ar


# --- MakeMaker constants section:
AR_STATIC_ARGS = cr
NAME = DBI
DISTNAME = DBI
NAME_SYM = DBI
VERSION = 1.50
VERSION_SYM = 1_50
XS_VERSION = 1.50
INST_BIN = blib/bin
INST_EXE = blib/script
INST_LIB = blib/lib
INST_ARCHLIB = blib/arch
INST_SCRIPT = blib/script
PREFIX = /usr
SITEPREFIX = $(PREFIX)/local
INSTALLDIRS = site
INSTALLPRIVLIB = $(PREFIX)/share/perl/5.6.1
INSTALLARCHLIB = $(PREFIX)/lib/perl/5.6.1
INSTALLSITELIB = $(SITEPREFIX)/share/perl/5.6.1
INSTALLSITEARCH = $(SITEPREFIX)/lib/perl/5.6.1
INSTALLVENDORLIB = $(PREFIX)/share/perl5
INSTALLVENDORARCH = $(PREFIX)/lib/perl5
INSTALLBIN = $(PREFIX)/bin
INSTALLSCRIPT = $(PREFIX)/bin
INSTALLSITEBIN = $(SITEPREFIX)/bin
PERL_LIB = /usr/share/perl/5.6.1
PERL_ARCHLIB = /usr/lib/perl/5.6.1
SITELIBEXP = /usr/local/share/perl/5.6.1
SITEARCHEXP = /usr/local/lib/perl/5.6.1  # Dieses ist die Zeile 81
LIBPERL_A = libperl.a
FIRST_MAKEFILE = Makefile
MAKE_APERL_FILE = Makefile.aperl
PERLMAINCC = $(CC)
PERL_INC = /usr/lib/perl/5.6.1/CORE
PERL = /usr/bin/perl
FULLPERL = /usr/bin/perl
FULL_AR = /usr/bin/ar



Was ich nicht verstehe ist:
1.)
Wieso werden PREFIX und LIB nicht im Makefile berücksichtigt?
Im Makefile ist davon weit und breit nirgends etwas zu sehen.

2.)
Die Fehlermeldung "Can't open
PREFIX=/kunden/homepages/37/d19249310/htdocs/bko/myLibs: No such file or
directory at Makefile.PL line 24."
Wird hier etwa der String "PREFIX=" mit zum Dateinamen gezählt?
Wieso das denn?
Das Verzeichnis /kunden/..../myLibs/ gibt es ja, habe ich ja selbst
angelegt!

3.)
Bei "make install":
mkdir /usr/local/lib/perl/5.6.1: Permission denied
Klar liegt das am Makefile, aber wieso keine Berücksichtigung von
PREFIX und LIB ?


> Bis wohin "nach oben"? Und bis wohin hast du Schreibzugriff? Rein von
> der Benamsung solltest du ab /homepages/37/d19249310/ Schreibzugriff
> haben. Und _dort_ solltest du dann deinen perl-Kram ablegen (also in

Muß ich noch probieren.


> Mail bitte mal die Ausgabe von 'env' (bzw. 'set') sowie die von

perl -V sagt u.a.:
Characteristics of this binary (from libperl): 
  Compile-time options: USE_LARGE_FILES
  Built under linux
  Compiled at Dec 23 2004 16:34:22
  @INC:
    /usr/local/lib/perl/5.6.1
    /usr/local/share/perl/5.6.1
    /usr/lib/perl5
    /usr/share/perl5
    /usr/lib/perl/5.6.1
    /usr/share/perl/5.6.1
    /usr/local/lib/site_perl
    .

LG,
Ralph



-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    [email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.