Missing libtdsodbc.so in freetds-dev - MSSQL on Ubuntu

freetds, odbc, sql-server, t-sql, ubuntu

Solution

I ended up solving it with the help of this listserv post:

http://mailman.unixodbc.org/pipermail/unixodbc-support/2008-November/001842.html

Except:

Driver = TDS

Should be:

Driver = FreeTDS

That weird 64-bit driver I had to manually find was also relevant, and ignoring freetds.conf was the way to go.

Fun stuff.

Problem

I'm trying to get MSSQL working on Ubuntu 12.04 via ODBC, and I've followed these steps to the letter: http://jamesrossiter.wordpress.com/2011/03/08/connecting-to-microsoft-sql-server-using-odbc-from-ubuntu-server/ However, this omits both of these files that are pointed at in odbcinst.ini: ``` Driver = /usr/lib/odbc/libtdsodbc.so Setup = /usr/lib/odbc/libtdsS.so ``` So, I googled a bit and found this: http://ubuntuforums.org/showthread.php?t=433435&page=2 So I followed those instructions and put libtdsodbc.so in /usr/lib/odbc/, but I still get this error: ``` Can't open lib '/usr/lib/odbc/libtdsodbc.so' : file not found, SQL state 01000 in SQLConnect ``` But... ``` root@ubuntu:/usr/lib/odbc# ls -la total 552 drwxr-xr-x 2 root root 4096 Aug 19 20:12 . drwxr-xr-x 62 root root 12288 Aug 19 19:41 .. -rwxrwxr-x 1 root root 270608 Aug 19 20:00 libtdsodbc.so ``` I tried chmod 775 on that file, which explains the permissions. Still no luck. Any ideas? I'm stumped. Would really love to get this working on my Linux box. EDIT: I'm using Ubuntu 64-bit. I'm betting this is the problem. Hope that helps... EDIT2: I tried manually getting the 64-bit package from here: http://www.ubuntuupdates.org/package/core/precise/main/base/tdsodbc And then I saw there was a file called this: ``` /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so ``` Woo, maybe a 64-bit version, right? So I pointed odbcinst.ini at it, and it didn't work.

Original source