공유 라이브러리를 현재 '.' osx의 단위 테스트에서 리눅스와 NetBSD의 작동 무엇osx에서 python load dylib를 만드는 방법
은에
export DYLD_LIBRARY_PATH=.:$DYLD_LIBRARY_PATH
를 추가
하지만 OSX에 _mymodule.so --> ../.libs/libmymodule.so
는, 파이썬의 import mymodule
내가 해봤
_mymodule.dylib --> ../.libs/libmymodule.dylib
찾을 수 없습니다 심볼릭 링크가 script env, nogo. 어떤 도움을 주셔서 감사합니다.
-Ed
갱신 4/6/10는 :
아래 krunk의 정보와 해결. 그러나 dylib를 .so라는 이름으로 복사하거나 ln-s'ing해도 완전히 그것을 해결하지 못했습니다. 여전히로드되지 않습니다. 그러나 libtool에 lib를 -module 플래그와 연결하도록 지시하면로드 할 .so lib가 생성됩니다. 파이썬 버전의 lib가 이제 작동합니다.
이제 perl 라이브러리를 사용할 수 있습니다. 저는 swig perl, python, ruby, lua libs를 만들고 있습니다.이 픽스는 오직 python과 lua 만 가지고 있습니다.
감사합니다! 당신의 대답은이 도랑에서 나를 빠져 나갔고, 올바른 길로 나아갔습니다. – navicore
OS X에서 정적 라이브러리를 사용하지 마십시오. 정적 라이브러리에 특별히 링크를 지정해도 OSX는 정적 라이브러리보다 동적 라이브러리를 가능한 항상 링크합니다 (가능하면 가능하지 않습니다). 예 : /path/to/libfoo.a에 링크하고 libfoo.dylib 또는 libfoo.so가 경로의 아무 곳에 나 있으면 링커에서 두 테이블에 다른 테이블이 있으면 매우 흥미있는 런타임 정의되지 않은 심볼 오류로 이어지는 요청을 겉으로는 무시할 것입니다. – jkyle