2016-03-18 2 views
0

Я установил модуль Python pyodbc, запустив easy_install path/to/egg. Модуль использует собственный код. Результат показал успех.Правильная настройка LD_LIBRARY_PATH после установки модуля с помощью easy_install

Однако при попытке до import pyodbc возникает ошибка: cannot open shared object file.

Исследования на этом сайте показывают, что Python ищет родные библиотеки в пути, указанном переменной окружения LD_LIBRARY_PATH. Поэтому я должен указать, что он указывает путь, по которому easy_install поместил собственные файлы во время установки.

Однако я не могу найти этот путь. Я просмотрел /usr/lib, /usr/lib64 и еще несколько каталогов, которые имели смысл (я не нахожусь на машине Linux на работе, поэтому, извините, я не могу вспомнить дополнительные каталоги, которые я просматривал).

Пожалуйста, объясните, где можно найти путь.

ответ

0

Как пояснил here:

вы должны установить ваш LD_LIBRARY_PATH в LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib (в вашем .profile или .bashrc или .zshrc), который указывает на то, где unixodbc и freetds разделяемые библиотеки получили установлен, если вы устанавливали их с помощью вашей системы менеджер пакетов.

т.е. если вы на убунте, типа apt-get install freedts unixodbc

pyodbc просто обертка библиотеки C, следовательно, эти требования.

последнее, но главное, после установки вашего LD_LIBRARY_PATH в одном из этих файлов окружения, сделать либо colose и открыть оболочку вашего терминала, или, например source ~/.bashrc (если бы вы это в вашем Bashrc очевидно)

+0

Спасибо за ваш ответ. Я посмотрел в '/ usr/local/lib', и эта библиотека пуста. Означает ли это, что 'easy_install' помещает файлы в другое место? –

+0

если вы на ubuntu, введите apt-get install freedts unixodbc –

+0

Вы имеете в виду, что мне нужно установить драйвер ODBC? Я сделал с RPM. Или вы имеете в виду, что мне нужна дополнительная установка? –

 Смежные вопросы

  • Нет связанных вопросов^_^