A note for my future self on how to compile a library as universal binary in Mac OS X.
For a while, I’ve been getting warnings like these when building pymssql:
ld: warning: ignoring file /usr/local/lib/libsybdb.dylib, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /usr/local/lib/libsybdb.dylib ld: warning: ignoring file /usr/local/lib/libct.dylib, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /usr/local/lib/libct.dylib
I finally decided to do something about them. I rebuilt FreeTDS from source as follows:
./configure \ CFLAGS="-arch i386 -arch x86_64" \ CXXFLAGS="-arch i386 -arch x86_64" \ LDFLAGS="-arch i386 -arch x86_64" \ --disable-dependency-tracking make make install
Goodbye warnings!
This Stack Overflow post was helpful: Stack Overflow: How to compile universal libraries on Mac OS X?