J'essaie de faire fonctionner MSSQL sur Ubuntu 12.04 via ODBC, et j'ai suivi ces étapes à la lettre:
Cependant, ceci omet ces deux fichiers pointés dans odbcinst.ini:
Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
Alors, j'ai googlé un peu et trouvé ceci:
http://ubuntuforums.org/showthread.php?t=433435&page=2
J'ai donc suivi ces instructions et mis libtdsodbc.so dans/usr/lib/odbc /, mais j'obtiens toujours l'erreur suivante:
Can't open lib '/usr/lib/odbc/libtdsodbc.so' : file not found, SQL state 01000 in SQLConnect
Mais...
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
J'ai essayé chmod 775 sur ce fichier, ce qui explique les autorisations. Toujours pas de chance.
Des idées? Je suis perplexe. J'aimerais vraiment que cela fonctionne sur ma machine Linux.
EDIT: J'utilise Ubuntu 64 bits. Je parie que c'est le problème. J'espère que cela pourra aider...
EDIT2: J'ai essayé d'obtenir manuellement le paquet 64 bits à partir d'ici:
http://www.ubuntuupdates.org/package/core/precise/main/base/tdsodbc
Et puis j'ai vu qu'il y avait un fichier appelé ceci:
/usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
Woo, peut-être une version 64 bits, non?
J'ai donc pointé odbcinst.ini dessus, et cela n'a pas fonctionné.
J'ai fini par le résoudre à l'aide de ce message de liste de diffusion:
http://mailman.unixodbc.org/pipermail/unixodbc-support/2008-November/001842.html
Sauf:
Driver = TDS
Devrait être:
Driver = FreeTDS
Ce pilote 64 bits étrange que je devais trouver manuellement était également pertinent, et ignorer freetds.conf était la solution.
Truc amusant.
Sudo apt-get install freetds-dev
ou
Sudo apt-get install tdsodbc
maintenant pour 32 bits regarder dans:
/usr/lib/i386-linux-gnu/odbc/libtdsodbc.so
ou 64 bits:
/usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so