[python-sybase] ASE15 and undefined symbol: cs_dt_info

Eduardo Gonzalez-Solares eglez at ast.cam.ac.uk
Wed May 17 23:12:04 EST 2006


Hi,

When trying to compile the sybase module using ASE15 I was getting:

> python -c "import sybasect"
Traceback (most recent call last):
  File "<string>", line 1, in ?
ImportError: ./sybasect.so: undefined symbol: cs_dt_info

The problem is that ASE15 has renamed their libraries (probably because
of conflicting names with other system libraries) so that e.g. libblk.a
in ASE12.5 is now libsybblk.a. My fix:

--- setup.py.orig       2006-05-17 14:09:45.000000000 +0100
+++ setup.py    2006-05-17 14:10:13.000000000 +0100
@@ -45,7 +45,7 @@
     # On Linux the Sybase tcl library is distributed as sybtcl
     syb_libs = []
     if os.uname()[0] == 'Linux':
-        lib_names = ['blk', 'ct', 'cs', 'sybtcl', 'insck', 'comn', 'intl']
+        lib_names = ['sybblk', 'sybct', 'sybcs', 'sybtcl', 'sybinsck',
'sybcomn', 'sybintl']
     elif os.uname()[0] == 'AIX':
         lib_names = ['blk', 'ct', 'cs', 'comn', 'tcl', 'intl', 'insck']
     else:

(beware of line breaks due to emailer) works for me.

Hope it helps,

Eduardo.


More information about the Python-sybase mailing list