Michael Peppler
Sybase Consulting
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
Sybase on Linux FAQ
Sybperl FAQ
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: "Mark Aufflick" <mark at aufflick dot com>
Subject: Fwd: Partial success compiling Sybperl 2.18 under cygwin
Date: Jan 9 2006 5:21AM

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

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

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
perl version: 5.8.7
cygwin version: not sure, but it's less than 2 months old
ocs version: 12.5.1