내 컴퓨터에서 완벽하게 실행되는 Python 응용 프로그램을 만들었습니다 (Mac OSX 10.8.3 Python2.7.3 Postgresql9.2.4 Psycopg2-2.5). 응용 프로그램은 py2app를 사용하여 컴파일되며 응용 프로그램 내용 폴더에 모든 패키지/모듈이 성공적으로 포함되어 있음을 알 수 있습니다.Psycopg2 Python 응용 프로그램의 배포 문제
Psycopg2가 내 컴퓨터에서 제대로 가져 오지만 응용 프로그램이 정상적으로 실행되지만 응용 프로그램이 다른 컴퓨터에서 실행될 때 (열어 본 4 가지 컴퓨터 ...) 콘솔 메시지가 열리지 않고 ImportError : dlopen (/Applications/app.app/Contents/Resources/lib/python2.7/psycopg2/_psycopg.so, 2) : 라이브러리가로드되지 않았습니다. libpq.5.dylib
내 코드를 검색하고 수정했습니다. SO를 통해 광범위하게 Google은 아무 소용이 없습니다. psycopg2 링크는이 문제를 특별히 다루지 않습니다. http://initd.org/psycopg/articles/2010/11/11/links-about-building-psycopg-mac-os-x/
나는 소스 동안에서 설치 제거하고 사제와 함께 설치 PostgreSQL은 9.2.4로, 소스, MacPorts를, 사제 등 내 현재의 환경은 위에 열거되어에서 구축, psycopg2 & PostgreSQL을 여러 번 다시 설치하고 psycopg2-2.5 한내가 실행하면 명시 적으로 setup.cfg
에 pg_config 위치를 연결하는 otool -l _psycopg.so에, 나는 다음과 같은 얻을
/usr/lib/libpq.5.dylib (compatibility version 5.0.0, current version 5.4.0)
/usr/lib/libssl.0.9.8.dylib (compatibility version 0.9.8, current version 47.0.0)
/usr/lib/libcrypto.0.9.8.dylib (compatibility version 0.9.8, current version 47.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
어떻게 내 내장 된 응용 프로그램은 다음과 같습니다 (또는 대상 사용자를 가리킬 수 있습니다 가능하다면 파일)이 파일들? 이것이 올바른 접근 방법입니까? 물론 Py2app는 "frameworks"옵션에서/usr/lib /의 시스템 파일을 포함하지 않습니다.
로널드 - 명확한 조음을 가져 주셔서 감사합니다. 나는 내 실수를 깨닫는다. 내 응용 프로그램 빌드는 이제 libpq 프레임 워크를 포함하며 배포 가능 범위 내에서 올바르게 링크됩니다. 추가 dylib 파일은/usr/lib에있는 것과 똑같습니다. – LouisL