2009-09-24 5 views
0

this question에 대한 속편 질문에서 회사 환경에 libpython2.6.so 공유 객체가 없지만 libpython2.6.a 파일이 있습니다. 거기 libpython2.6.alibpython2.6.a에 기호를 유지하면서 동적 라이브러리가 런타임에 이러한 기호를 찾을 수 있도록 컴파일 할 수있는 방법이 있습니까? 나는 '수학'과 같은 모듈을로드하는 경우어떻게 libpython.a에 링크 할 수 있습니까? 그런 런타임 링커는 libpython.a에있는 모든 심볼을 찾을 수 있습니까?

g++ -I/usr/CORP/pkgs/python/2.6.2/include/python2.6 \ 
    ~/tmp.cpp -pthread -lm -ldl -lutil \ 
    /usr/CORP/pkgs/python/2.6.2/lib/python2.6/config/libpython2.6.a \ 
    -o tmp.exe 

그러나, 그것은으로 사망 :

undefined symbol: PyInt_FromLong 

답변

2

당신이 --export-dynamic을 통과해야 같은 정적 라이브러리와

나의 현재 컴파일 보인다 링커. 그래서 g++에서부터 ...

관련 문제