2012-09-27 3 views
0

은 내가 콘텐츠 더보기 SwiftKey 라이브러리에 연결을 시도하고이 오류를 얻었다 : 다른 프로젝트와 잘 작동 ++libxxx.so.N 뒤에 나오는 번호는 무엇을 나타 냅니까?

g++ test.cpp -I include/swiftkeysdk/ -L lib/x86/ -lswiftkeysdk-cpp 

/usr/bin/ld: warning: libm.so.2, needed by lib/x86//libswiftkeysdk-cpp.so, not found (try using -rpath or -rpath-link) 
/usr/bin/ld: warning: libcpp.so.4, needed by lib/x86//libswiftkeysdk-cpp.so, not found (try using -rpath or -rpath-link) 
/usr/bin/ld: warning: libc.so.3, needed by lib/x86//libswiftkeysdk-cpp.so, not found (try using -rpath or -rpath-link) 

$ ldconfig -p | grep "libm.so" 
libm.so.6 (libc6, OS ABI: Linux 2.6.15) => /lib/i386-linux-gnu/libm.so.6 
libm.so (libc6, OS ABI: Linux 2.6.15) => /usr/lib/i386-linux-gnu/libm.so 
$ ldconfig -p | grep "libc.so" 
libc.so.6 (libc6, OS ABI: Linux 2.6.15) => /lib/i386-linux-gnu/libc.so.6 

하지만 내 g을. 누구든지 뒤에있는 숫자가 무엇인지 전혀 생각하지 못합니다. 그리고이 문제를 해결하는 방법?

답변

1

.so 뒤에 오는 번호는 라이브러리의 버전 번호입니다. 버전 번호는 라이브러리의 ABI를 정의합니다. 즉, 소스 코드의 다른 버전은 이진 인터페이스가 상호 교환 가능한 한 동일한 번호를 사용할 수 있습니다. 자세한 내용은

https://unix.stackexchange.com/questions/475/how-do-so-shared-object-numbers-work

libC.so.3 라이브러리는 리눅스를보고 매우 사용할 수 없습니다를 참조하십시오. libswiftkeysdk-cpp.so는 어디에서 받았습니까?

관련 문제