2017-09-05 212 views
0

我试图同时安装在Mac OS X 10.12.6 Pyodbc(pip install pyodbc)(塞拉利昂),导致下面的错误追查问题:如何解决未找到“odbc”库的连接器(ld)错误(-lodbc)?

ld: library not found for -lodbc 

链接器(ld)正在寻找库“odbc”并没有找到它。我假设链接器可以处理动态库,但可能它正在寻找一个静态库文件(即libodbc.a)。

现在我已经安装了了unixODBC像这样:

cd ~/Downloads 
curl -O ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.4.tar.gz 
tar xzvf unixODBC*.tar.gz 
cd unixODBC* 
./configure 
make 
sudo make install 

我的问题是不幸的是有些宽泛,因为我不是这个问题非常熟悉。这些可能会使我朝着正确的方向前进:寻找图书馆的ld在哪里?它需要什么库(文件)名称?我在/usr/local/lib看到libodbc.dylib;这不应该是链接的图书馆吗?而...我怎样才能进一步调试呢?

P.S. - 我试图在不使用Homebrew的情况下做到这一点。

回答

0

ld正在寻找/usr/lib/libodbc.dylib,但由于在El Capitan及更高版本中实施的SIP(系统完整性保护),无法修改该目录。

由于库文件实际上是在/usr/local/lib/是,我加入-L/usr/local/libld参数固定的问题。

对于Python软件包,将['library_dirs'] = '/usr/local/lib'添加到您的编译器设置中。我已经为Pyodbc的本地克隆完成了它,并且它工作正常!

相关问题