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: RE: ct_init error for Sybperl CTLib on ASE 12.5 OCS
Date: Apr 17 2002 9:12AM

Is this still true? If so, when building a sybperl package, do we have to ensure
 that the same version of open client is on there at the same location as
compile time????


I think it is.  This looks like HP-UX (but I'm not sure it matters.)  If you 
look at CTlib.sl (wherever it is configured to run from,) with chatr, you will 
be able to see that it is requiring a particular version of Open Client:

chatr /apps/CEDEV/CEDEV_SOURCE/library/PA-RISC1.1/auto/Sybase/CTlib/CTlib.sl

/apps/CEDEV/CEDEV_SOURCE/library/PA-RISC1.1/auto/Sybase/CTlib/CTlib.sl:
         shared library
         shared library dynamic path search:
             SHLIB_PATH     disabled  second
             embedded path  disabled  first  Not Defined
         shared library list:
             dynamic   /opt/sybase/open1004_8069/lib/libct.sl
             dynamic   /opt/sybase/open1004_8069/lib/libcs.sl
             dynamic   /opt/sybase/open1004_8069/lib/libtcl.sl
             dynamic   /opt/sybase/open1004_8069/lib/libcomn.sl
             dynamic   /opt/sybase/open1004_8069/lib/libintl.sl
             dynamic   /opt/sybase/open1004_8069/lib/libinsck.sl
             dynamic   /usr/lib/libM.1
         shared vtable support disabled
         static branch prediction disabled
         executable from stack: D (default)
         kernel assisted branch prediction enabled
         lazy swap allocation disabled
         text segment locking disabled
         data segment locking disabled
         third quadrant private data space disabled
         fourth quadrant private data space disabled
         data page size: D (default)
         instruction page size: D (default)

You can if you like change the attributes on CTlib.sl using chatr, so that 
SHLIB_PATH will be searched if those Open Client paths are no longer present.  
However that version has to be installed somewhere (it sounds as if it might 
now be absent on your installation.)

Otherwise you must rebuild CTlib.sl for your new version of OPen Client (it 
sounds as if you've recently migrated.)  That might well provoke you into 
rebuilding perl too, if the runtime libraries used for the extensions differ 
from those used for perl itself.

I hope this helps,

Regards,

Abe Crabtree




-----Original Message-----
From: Graham1.SIMPSON [mailto:Graham1.SIMPSON@hsbcib.com]
Sent: 17 April 2002 09:47
To: SYBPERL-L
Subject: ct_init error for Sybperl CTLib on ASE 12.5 OCS




Hi Folks,

We're getting the following from a script:

Open Client Message:
Message number: LAYER = (5) ORIGIN = (3) SEVERITY = (5) NUMBER = (131)
Message String: ct_init(): network packet layer: internal net library error:
Attempt to load protocol driver failed
Sybase::CTlib initialize: ct_init() failed at
/opt/perl5/lib/5.6.1/PA-RISC2.0/DynaLoader.pm line 225.

...when running Sybperl CTlib against an ASE 12.5 SWR 9614 open client
(OCS-12_0)

We normally get this error when the environment ($SYBASE, $SYBASE_OCS, etc.) is
not set correctly. However, on this occassion all looks good.

If I run the script against open client 12.x SWR 9461 (this is where sybperl was
 compiled against) - all is good.

Doing a sum of the lib directories in each open client area produces different
checksums, in fact most of the files are different (understandably).

>From the FAQ:

"2.4 I've moved the Sybase libraries, and Sybperl won't run...

The sybperl make process hard-codes the path to the Sybase shared
libraries (libsybdb.so and friends) into the binaries (either the
dynamically loadable modules, or the Perl executable). This is done so
that Perl can find the libraries it needs even if the LD_LIBRARY_PATH
environment variable which is normally used to specify special library
directories is not set "

Is this still true? If so, when building a sybperl package, do we have to ensure
 that the same version of open client is on there at the same location as
compile time????

Thanks for any help you can give,

Graham Simpson




_____________________________________________________

This transmission has been issued by a member of the HSBC Group 
"HSBC" for the information of the addressee only and should not be 
reproduced and / or distributed to any other person. Each page attached 
hereto must be read in conjunction with any disclaimer which forms part 
of it. Unless otherwise stated, this transmission is neither an offer nor the 
solicitation of an offer to sell or purchase any investment. Its contents are 
based on information obtained from sources believed to be reliable but
HSBC makes no representation and accepts no responsibility or liability as 
to its completeness or accuracy.