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 dot peppler at bnpparibas dot com
Subject: Re: Fwd: Partial success compiling Sybperl 2.18 under cygwin
Date: Jan 9 2006 6:52AM

I don't remember right now how I did the .a files, and I don't have access
to the computer that might have the information at the moment (I'm at work,
the computer's at home :-)

However, if you edit the CONFIG file in the sybperl source directory and
set DBLIBVS to 0 then the Sybase::DBlib build should normally be skipped,
and all should be well. There may be test errors (I haven't made sure that
make test does the right thing in this situation in a long time), but at
least you shouldn't get any build errors.

Michael




Internet
mark@aufflick.com@peppler.org - 09/01/2006 06:21


Sent by:    owner-sybperl-l@peppler.org

To:    sybperl-l

cc:


Subject:    Fwd: Partial success compiling Sybperl 2.18 under cygwin



Hello everyone.

I have hit the problem (documented in numerous places) that current
versions of the Sybase open client for Windows don't seem to contain
enough symbol information to build cygwin .a files from their dll's.

In order to work around that, Michael Peppler "built a set of .a files
(libcs.a, libct.a and libblk.a) that provide these entry points" - see
http://www.peppler.org/archive/sybperl-l/2004/11/7962.html

According to this email, these archives were built to allow DBD::Sybase
to be compiled against new open client dlls under cygwin. I followed the
steps in that email (including modifying all Makefiles in the
Sybase::Sybperl distro), plus I copyied the sybase ocs header files to
/usr/local/include.

I have been able to get it all to compile except for the DBLib directory.
I assume that's because Michael has only supplied .a files for CS, CT
and BLK.

I get a whole bunch of linker errors like:

DBlib.o:DBlib.c:(.text+0x2214): undefined reference to `_dbgetuserdata@4'
DBlib.o:DBlib.c:(.text+0x2c2f): undefined reference to `_dbconvert@28'

etc. A quick google for dbgetuserdata tells me that it is indeed a Sybase
DBLib api call.

I'm not sure how Michael built these files (from memory of other emails
i have seen it was from an older version of OCS?), but I guess I have
two options:

1/ somehow generate an appropriate symbol file for dblib
2/ remove the dblib stuff from the Sybperl module since I don't think
any of my code needs it.

Does anyone have any info that would be useful for me?

sybperl version: 2.18 (from peppler.org)
perl version: 5.8.7
cygwin version: not sure, but it's less than 2 months old
ocs version: 12.5.1

Cheers,

 Mark.)



This message and any attachments (the "message") is
intended solely for the addressees and is confidential. 
If you receive this message in error, please delete it and 
immediately notify the sender. Any use not in accord with 
its purpose, any dissemination or disclosure, either whole 
or partial, is prohibited except formal approval. The internet
can not guarantee the integrity of this message. 
BNP PARIBAS (and its subsidiaries) shall (will) not 
therefore be liable for the message if modified. 

                ---------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le 
"message") sont etablis a l'intention exclusive de ses 
destinataires et sont confidentiels. Si vous recevez ce 
message par erreur, merci de le detruire et d'en avertir 
immediatement l'expediteur. Toute utilisation de ce 
message non conforme a sa destination, toute diffusion 
ou toute publication, totale ou partielle, est interdite, sauf 
autorisation expresse. L'internet ne permettant pas 
d'assurer l'integrite de ce message, BNP PARIBAS (et ses
filiales) decline(nt) toute responsabilite au titre de ce 
message, dans l'hypothese ou il aurait ete modifie.