리눅스 동적 라이브러리 의존성 질문(MYSQL 플러그인)

killer759의 이미지

a.so / b.so / c.so 가 있는데

b가 c를 빌드할 때 참조하고

a가 b를 참조해 최종적으로 a.so를 mysql플러그인으로 만들었습니다.

이 때 mysql plugin에서 함수 등록 시, c를 찾을 수 없다고 하는데

모든 경로를 체크해보고 라이브러리를 넣어줘도 동일한 증상입니다..

b.so에서 dlopen으로 c를 하면 잘 동작합니다. 그러나 제 시스템에선 dlopen을 사용하지 않습니다.,

혹시 왜그런지 아시는분 있나요?

김정균의 이미지

c 를 찾을 수 없다고 나온다는 의미가 뭔가요? c 에 들어있는 function call 이 없다고 나온다는 얘기인가요?

왠만하면, 에러 메시지는 발생한 그대로를 주시는 것이 좋습니다.

그리고, 혹시나.. a 에서 c 의 fanction call 을 호출하려고 하는 것이라면 a build 시에 c 도 링크를 해 주세요. 아니면 b 에서 c 의 function call 을 호출하는 wrapper function 을 만들든지요.