2017-09-05 15 views
1
나는 성공적으로 맥 OS X 10.12.6 (시에라) 만에 인 unixODBC 2.3.4을 설치 한

나는 다음과 같은 오류로 실행Pyodbc가 찾지 못하는 "odbc"라이브러리는 무엇입니까? 내가 <code>pip install pyodbc</code>를 실행하려고하면

ld: library not found for -lodbc 

내가 무엇을 찾고 있어요 것은 가정 unixODBC와 함께 설치된 libodbc.la :

test -z "/usr/local/lib" || .././install-sh -c -d "/usr/local/lib" 
/bin/sh ../libtool --mode=install /usr/bin/install -c libodbc.la '/usr/local/lib' 

이것은 Pyodbc이 (가) 찾고있는 것이 아닌가요? 성공적으로 찾아서 사용하려면 어떻게해야합니까?

답변

2

Pyodbc source (버전 4.0.17)의 사본을 다운로드했으며 그 내용은 setup.py입니다. 그것은 참 인 unixODBC를 찾고 :

# The latest versions of OS X no longer ship with iodbc. Assume 
# unixODBC for now. 
settings['libraries'].append('odbc') 

ld/lib/usr/libodbc.dylib을 찾습니다 -lodbc로 호출됩니다. 불행히도 엘 캐피 탄 이후로 정상적인 설치는 /lib/local/usr으로 진행됩니다.

# unixODBC make/install places libodbc.dylib in /usr/local/lib/ by default 
# (also OS/X since El Capitan prevents /usr/lib from being accessed) 
settings['library_dirs'] = [ '/usr/local/lib' ] 

나는 다음과 같이 내 로컬 시스템에서 PIP와이를 설치할 수 있습니다 : 나는이 문제를 해결하기 위해 무슨 짓을

는 다음의 sys.platform == 'darwin': 섹션에서 setup.py에 다음 줄을 추가하는 것입니다

$ sudo pip install /path/to/pyodbc-4.0.17/ 

나는 Pyodbc에 만들어진 패치를 만들려고 노력할 것이다. 그러나 이것은 그 동안 나를 알아 듣는다.