Bonjour à tous,
je suis sur debian 3.1 avec Perl 5.8.4 et une install de sybase 11-9.
J'ai plusieurs questions à poser concernant l'installation et la configuration des DBD::.
- En règle générale, l'installation d'un DBD::* sur une machine implique t'elle d'avoir le SGBD installé (ou une partie) sur cette même machine. Par exemple, pour installer DBD::Sybase, est ce qu'il faut avoir un Sybase qui tourne en local, ou un client ...?
Ou le DBD:: se suffit à lui même ?
- J'ai installé sur la debian le DBD::Sybase. Voila l'output de la manip :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 ROCK:/app/tempdbd/DBD-Sybase-1.07# perl Makefile.PL Sybase OpenClient 11.1.1 found. By default DBD::Sybase 1.05 and later use the 'CHAINED' mode (where available) when 'AutoCommit' is turned off. Versions 1.04 and older instead managed the transactions explicitly with a 'BEGIN TRAN' before the first DML statement. Using the 'CHAINED' mode is preferable as it is the way that Sybase implements AutoCommit handling for both its ODBC and JDBC drivers. Use 'CHAINED' mode by default (Y/N) [Y]: y Running in threaded mode - looking for _r libraries... No thread-safe Sybase libraries found The DBD::Sybase module need access to a Sybase server to run the tests. To clear an entry please enter 'undef' Sybase server to use (default: SYBASE): User ID to log in to Sybase (default: sa): Password (default: undef): Sybase database to use on SYBASE (default: undef): master * Writing login information, including password, to file PWD. Multiple copies of Driver.xst found in: /usr/local/lib/perl/5.8.4/auto/DBI/ /usr/lib/perl5/auto/DBI/ at Makefile.PL line 59 Using DBI 1.53 (for perl 5.008004 on i386-linux-thread-multi) installed in /usr/local/lib/perl/5.8.4/auto/DBI/ Writing Makefile for DBD::Sybase ROCK:/app/tempdbd/DBD-Sybase-1.07# make cc -c -I/app/sybase/include -DNO_THREADS -I/usr/local/lib/perl/5.8.4/auto/DBI -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.07\" -DXS_VERSION=\"1.07\" -fPIC "-I/usr/lib/perl/5.8/CORE" Sybase.c cc -c -I/app/sybase/include -DNO_THREADS -I/usr/local/lib/perl/5.8.4/auto/DBI -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.07\" -DXS_VERSION=\"1.07\" -fPIC "-I/usr/lib/perl/5.8/CORE" dbdimp.c Running Mkbootstrap for DBD::Sybase () chmod 644 Sybase.bs rm -f blib/arch/auto/DBD/Sybase/Sybase.so LD_RUN_PATH="/app/sybase/lib" cc -L/app/sybase/lib -shared -L/usr/local/lib Sybase.o dbdimp.o -o blib/arch/auto/DBD/Sybase/Sybase.so -L/app/sybase/lib -lct -lcs -lsybtcl -lcomn -lintl -lblk -ldl -lm chmod 755 blib/arch/auto/DBD/Sybase/Sybase.so cp Sybase.bs blib/arch/auto/DBD/Sybase/Sybase.bs chmod 644 blib/arch/auto/DBD/Sybase/Sybase.bs Manifying blib/man3/DBD::Sybase.3 ROCK:/app/tempdbd/DBD-Sybase-1.07# make install Installing /usr/local/lib/perl/5.8.4/auto/DBD/Sybase/Sybase.so Files found in blib/arch: installing files in blib/lib into architecture dependent library tree Writing /usr/local/lib/perl/5.8.4/auto/DBD/Sybase/.packlist Appending installation info to /usr/local/lib/perl/5.8.4/perllocal.pod ROCK:/app/tempdbd/DBD-Sybase-1.07#
- une fois tout ca fait, j'ai essayé de faire tourné un ptit code sample de PERL, pour voir...
le code :
et le problème, c'est que j'ai un énorme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 #!/bin/perl use strict; use DBI; use Getopt::Long; $| = 1; #get params my $host = ''; my $user = 'sa'; my $pass = ''; my $database = 'master'; my $instance = 'Default'; my @data; #GetOptions ("instance=s" => \$instance, # "user=s" => \$user, # "pass=s" => \$pass, # ); my $string = 'dbi:Sybase:server=Default;database=master'; #connect my $dbh=DBI->connect('dbi:Sybase:server='.$instance.';database=master','sa','');
SEGMENTATION FAULT... comme résultat.
Mon problème majeur, c'est que je ne suis pas sur du tout que le DBD::Sybase soit configuré comme il se doit.
Donc, je voudrais un coup de main pour vérifier cette config.
Merci à tous![]()
Partager