[freetds] freetds-0.64 problems on OS X 10.5 Leopard

Patrick van Kleef iodbc at openlinksw.com
Tue Oct 30 06:41:12 EST 2007


Hi Fred,

On Oct 30, 2007, at 6:40 AM, Fred McCann wrote:

> I've been using freetds (0.64) with iODBC (03.52.0001.0928) on OS X
> 10.4.10 with no problems. iODBC comes with OS X and I installed
> freetds via mac ports.
>
> This weekend, I upgraded to OS X 10.5, Here's the versions I'm running
> now:
>
> OS X version: 10.5
> freetds version: 0.64
> iODBC version: 03.52.0406.1211
>
> When I try to access a MS SQL 2000 database, I'm getting this error:
>
> 1: SQLDriverConnect = [iODBC][Driver Manager]dlopen(/opt/local/lib/
> libtdsodbc.so, 6): Symbol not found: _MD4Final
>   Referenced from: /opt/local/lib/libtdsodbc.so
>   Expected in: flat namespace
>  (0) SQLSTATE=00000
> 2: SQLDriverConnect = [iODBC][Driver Manager]Specified driver could
> not be loaded (0) SQLSTATE=IM003

I checked this on my Mac OS X 10.5 machine and it is a problem with  
the libtool script. This causes some of the symbols in the ../tds/ 
tds_objects.a library, which includes the md4.o and therefore the  
MD4Final symbol, not to be present in the final symbol table.

When the iODBC driver manager then loads the libtdsodbc.so driver  
using dlopen (...., DYLD_NOW) the loader tries to fixup all the  
internal symbols and fails to find it.

I tried both the default supplied libtool from the freetds package as  
well as after running:

	glibtoolize -f -c
	aclocal
	autoconf
	automake
	./configure ....

both both gave similar problems.

I have not yet checked exactly which flag is incorrect in the libtool  
commands for Darwin, but i use a modified one i made myself for 10.4  
which works just fine.

I will do some more checking and will file some bug reports to Apple  
on this subject.

If you want either a binary build of FreeTDS for Mac, or the modified  
libtool script, please contact me directly on iodbc at openlinksw.com.


Patrick
---
Patrick van Kleef
Maintainer iODBC <iodbc at openlinksw.com>


More information about the FreeTDS mailing list