Подтвердить что ты не робот

Отсутствует libtdsodbc.so в freetds-dev - MSSQL на Ubuntu

Я пытаюсь заставить MSSQL работать с Ubuntu 12.04 через ODBC, и я выполнил следующие шаги к письму:

http://jamesrossiter.wordpress.com/2011/03/08/connecting-to-microsoft-sql-server-using-odbc-from-ubuntu-server/

Однако это исключает оба этих файла, на которые указывает oddccinst.ini:

Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so

Итак, я немного искал googled и нашел это:

http://ubuntuforums.org/showthread.php?t=433435&page=2

Итак, я выполнил эти инструкции и поместил libtdsodbc.so в /usr/lib/odbc/, но я все еще получаю эту ошибку:

Can't open lib '/usr/lib/odbc/libtdsodbc.so' : file not found, SQL state 01000 in SQLConnect

Но...

[email protected]:/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

Я попробовал chmod 775 в этом файле, что объясняет разрешения. Еще не повезло.

Любые идеи? Я в тупике. Было бы очень приятно, чтобы это работало на моем Linux-сервере.

EDIT: я использую 64-битный Ubuntu. Я уверен, что это проблема. Надеюсь, что это поможет...

EDIT2: я попробовал вручную получить 64-битный пакет отсюда:

http://www.ubuntuupdates.org/package/core/precise/main/base/tdsodbc

А потом я увидел, что есть файл с именем this:

/usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so

Уо, может быть, 64-битная версия, правильно?

Поэтому я указал odbcinst.ini на него, и это не сработало.

4b9b3361

Ответ 1

Я решил решить эту проблему с помощью этого списка рассылки:

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

Кроме:

Driver = TDS

Должно быть:

Driver = FreeTDS

Этот странный 64-битный драйвер, который мне пришлось вручную найти, также был уместным, и игнорировать freetds.conf был путь.

Забавные вещи.

Ответ 2

sudo apt-get install freetds-dev

или

sudo apt-get install tdsodbc

теперь для 32-битного просмотра:

/usr/lib/i386-linux-gnu/odbc/libtdsodbc.so

или 64-бит:

/usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so