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: abe dot crabtree at citicorp dot com
Subject: FW: Re: sybase 12 libs on HP-UX
Date: Nov 14 2001 9:36AM

Thanks for your answer.

I should have sent a further message.  It was a dynamic loading problem.

sybperl links to sybase shared libraries that require libc.

This can work because perl is built with libc as a shared library, and the 
symbol will be resolved from there.

The reason I didn't get it is that our build of perl is getting old, and had 
the last version of libc, which is slightly different.

On HP-UX one can see this by use of the chatr command, which reported libc.1 
for our version of perl.  /usr/lib/libc.sl is linked to the current version, 
currently 2.

I spent a bit of time trying to link libc to sybperl (before I understood the 
above,) and this produces other problems: libc has thread local storage, and 
such shared libraries simply cannot be loaded at runtime by shl_load.

It looks as if I have to rebuild perl, unless you have any better ideas (I have 
built it and proved the problem informally.)  I don't quite like the idea of 
static linking sybperl, so that perl has libc.1 and sybperl has libc2.  This 
sounds unconventional and perhaps difficult.  I'd think we'd need to regression 
test about the same whether we build sybperl only, or both sybperl and perl.

Thanks very much for your help.  If you have any other thoughts I'd be glad to 
hear them.

Regards,

Abe


-----Original Message-----
From: mpeppler [mailto:mpeppler@peppler.org]
Sent: 13 November 2001 21:08
To: SYBPERL-L
Cc: mpeppler
Subject: Re: sybase 12 libs on HP-UX


Abe Crabtree writes:
 > Has anyone found anything further out about this?
 > 
 > I get the _DINFINITY problem:
 > 
 >         PERL_DL_NONLAZY=1 /usr/bin/perl -I.././blib/arch -I.././blib/lib
 > -I/opt/perl5/lib/PA-RISC1.1/5.00404 -I/opt/perl5/lib -e 'us
 > e Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;'
 > t/*.t
 > t/ctlib............./usr/lib/dld.sl: Unresolved symbol: _DINFINITY
 > (data)  from /opt/sybase/r1200_9266/OCS-12_0/lib/libcomn.sl
 > Can't load '.././blib/arch/auto/Sybase/CTlib/CTlib.sl' for module
 > Sybase::CTlib: No such file or directory at /opt/perl5/lib/PA-RISC
 > 1.1/5.00404/DynaLoader.pm line 166.
 > 
 > 
 > I know libm is in there:



Have you tried building something like sqsh to see if it's dynamic
loading problem?

Michael
-- 
Michael Peppler - Data Migrations Inc. - http://www.mbay.net/~mpeppler
mpeppler@peppler.org - mpeppler@mbay.net
International Sybase User Group - http://www.isug.com