PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at MBAY dot NET>
Subject: Re: sybperl and perl 5.00401 on AIX
Date: Oct 7 1997 2:39PM

Marcotte, Lawrence wrote:
> 
> Tried it and I still get the same error!!

Tried what?

Did you add -linsck to CONFIG? If so, did you rebuild the Makefile
by running perl Makefile.PL?

Or did you edit DBlib.pm/CTlib.pm?

Michael

> 
> On Monday, October 06, 1997 6:42 PM, Michael Peppler
> [SMTP:mpeppler@mbay.net] wrote:
> > Marcotte, Lawrence wrote:
> > >
> > > I played around with this today and I still didn't get anywhere
> > >
> > > What happened was this:
> > >
> > > The first thing I did was rebuild Perl to release 5.00403
> > >
> > > I then rebuilt sybperl using my old source files. My makefile gave
> me
> > > the following output.
> > >
> >
> > 
> >
> > > When I run make test I got the following output
> > >
> > > ********************
> > >         LD_RUN_PATH="/database/sybase/lib:/lib" ld -o
> > > ..././blib/arch/auto/Sybase/DBlib/DBlib.so  -L/database/sybase/lib
> -H512
> > > -T512 -bhalt:4 -bM:SRE
> > > -bI:/usr/local/5.004_03/lib/perl5/aix/CORE/perl.exp -bE:DBlib.exp -b
> > > noentry -lc -L/usr/local/5.004_03/lib -L/usr/local/lib DBlib.o
> > > -L/database/sybase/lib -lsybdb -ltli -lm
> > >         chmod 755 .././blib/arch/auto/Sybase/DBlib/DBlib.so
> > >         PERL_DL_NONLAZY=1 /tmp/bintest/perl -I.././blib/arch
> > > -I.././blib/lib -I/usr/local/5.004_03/lib/perl5/aix
> > > -I/usr/local/5.004_03/lib/perl5 -e 'use Test::Harness qw(&runtests
> > > $verbose); $verbose=0; runtests @ARGV;' t/*.t
> > > t/bcp...............Value of  construct can be "0"; test
> with
> > > defined() at .././blib/lib/Sybase/BCP.pm line 567.
> > > Your vendor has not defined Sybase::DBlib macro sql, used at t/bcp.t
> > > line 47 (main).
> >
> > This is a known problem on AIX (and I guess it should be reported
> > to the perl5-porters).
> >
> > Edit DBlib.pm and move the __END__ tag to the very end of the file,
> > and do the same for CTlib.pm.
> >
> >
> > >
> > > At this point I decided to try a newer version of Sybperl that is
> > > adverised to work better with Perl 5.004.03.  This wouldn't even
> compile
> > > because it couldn't find a symbol  (bsd_tcp) that it apparently
> didn't
> > > need before.  Any ideas?
> > >
> > > ********************
> > >         cc -c -I/database/sybase/include -qmaxmem=8192 -D_ALL_SOURCE
> > > -D_ANSI_C_SOURCE -D_POSIX_SOURCE -I/usr/local/include -O
> > > -DVERSION=\"2.07b\"  -DXS_VERSION=\"2.07b\"
> > > -I/usr/local/5.004_03/lib/perl5/aix/CORE -DCTLIBVS=100
> > > -DSYBPLVER='"2.07b"' -DDO_TIE CTlib.c
> > >         LD_RUN_PATH="/database/sybase/lib:/lib" ld -o
> > > ..././blib/arch/auto/Sybase/CTlib/CTlib.so  -L/database/sybase/lib
> -H512
> > > -T512 -bhalt:4 -bM:SRE
> > > -bI:/usr/local/5.004_03/lib/perl5/aix/CORE/perl.exp -bE:CTlib.exp -b
> > > noentry -lc -L/usr/local/5.004_03/lib -L/usr/local/lib CTlib.o
> > > -L/database/sybase/lib -lct -lcs -ltcl -lcomn -lintl -ltli -lm
> > > ld: 0711-317 ERROR: Undefined symbol: bsd_tcp
> > > ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
> >
> > You haven't fixed the CONFIG file for the new version. YOu need
> > to set EXTRALIBS=-linsck in sybperl's CONFIG on AIX.
> >
> > Michael
> >
> >
> > > On Monday, October 06, 1997 12:15 PM, Michael Peppler
> > > [SMTP:mpeppler@mbay.net] wrote:
> > > > Lawrence & Elizabeth Marcotte wrote:
> > > > >
> > > > > I recently loaded perl 5.00401 on a server at work.  Sybperl
> does
> > > not
> > > > > work anymore.  This happened on an AIX machine running v.4 of
> the
> > > > > operating system.  Has anyone else run into this problem.
> > > >
> > > > Nancy Stevens wrote:
> > > > > Hi.  I was using CTlib (syb_perl version 2_07), with Perl
> version
> > > 5_003
> > > > > and everything was working fine.  I just upgraded to Perl
> version
> > > > > 5_004_3 (including the patch) and now when I try to connect to
> > > ctlib, I
> > > > > get the following errors (this in on AIX):
> > > > >
> > > > > perl -de 0
> > > > > main::(-e:1):   0
> > > > > DB<1> use Sybase::CTlib;
> > > > > DB<2>  $d = Sybase::CTlib->ct_connect(uid, pwd);
> > > > > Signal SEGV at /usr/local/lib/perl5/perl5db.pl line 1067
> > > > >         DB::DB called at -e line 1
> > > > > IOT/Abort trap(coredump)
> > > >
> > > >
> > > > As Ed Barlow noted, you need to rebuild sybperl.
> > > >
> > > > Perl 5.004 has changed some of the internal data structures and
> calls
> > > > that it uses, and this is probably what causes the SEGV.
> > > >
> > > > I didn't immediately connect this problem (that Nancy Stevens also
> > > > experienced) with the internal changes in perl 5.004 because you
> > > > get a much more explicit message from Solaris when symbols are
> > > > missing...
> > > >
> > > > Michael
> > > > --
> > > > Michael Peppler       -||-  Data Migrations Inc.
> > > > mpeppler@datamig.com  -||-  http://www.mbay.net/~mpeppler
> >
> > --
> > Michael Peppler       -||-  Data Migrations Inc.
> > mpeppler@datamig.com  -||-  http://www.mbay.net/~mpeppler

-- 
Michael Peppler       -||-  Data Migrations Inc.
mpeppler@datamig.com  -||-  http://www.mbay.net/~mpeppler