c++ 동적 링크 질문드려요...
글쓴이: goofy2 / 작성시간: 화, 2014/05/27 - 9:53오전
동적 라이브러리 (.so, .sl)등의 파일을 dlopen, dlsym 함수들을 사용하여 프로그램을 만드는 것은 아는데...
dlsym으로 함수를 얻어오기 위해서는 라이브러리(.so)에서 extern "C"를 해줘야 하자나요...
그런데 이번에 제가 쓰려는 라이브러리가 Class 로 되어 있는 라이브러리에요..ㅠㅠ 또한 라이브러리를 재컴파일을 못하는 상황이구요...
Class로 되어있는 함수를 dlopen, dlsym으로 불러올 수 있나요?
아니면 Class로 되어있는 라이브러리를 동적으로 불러 쓰는 다른 방법은 없을까요?/
인터넷으로 조금 찾아보니 Dynamic link로 컴파일할때 어떤 옵션을 사용하면 프로그램 실행 시 LD_LIBRARY_PATH에서 찾아쓴다는거 같은데..
정확히 어떤 의미인지요..ㅠ
Forums:
Wrapper를 만드시면 됩니다.
다른 쉬운 방법을 못찾으실 경우, C++로 된 래퍼 라이브러리를 하나 만들어서, extern C로 익스포트되는 래퍼 함수들을 만들고 그 안에서 자유롭게 실제 클래스 라이브러리를 링크하고 사용하시면 됩니다.
요컨대 입출력만 C형태로 맞춰주면 그만.
--
댓글 달기