shared library 관련 초보 질문
글쓴이: peccavi / 작성시간: 목, 2004/07/22 - 1:09오후
안녕하세요.
A 라이브러리를 wrapping하는 함수들의 묶음을 새로 만들어
B 라는 so 라이브러리로 만들었습니다.
C 라는 프로젝트에서 B.so를 링크하여 컴파일할때
A 라이브러리들이 없으면 컴파일 에러가 나네요..(당연한건가요.. -_ -;;)
A 라이브러리 없이 B만 링크하여 C를 빌드할수 있는 방법이 없나요?
참고로, so 파일은 다음과 같이 만들었습니다.
gcc -fPIC -Wall -g -c myhello.c -I/usr/local/hellolib/include
gcc -g -shared -Wl,-soname,libmyhello.so.0 -o libmyhello.so.0.0 myhello.o -lc
...이하 생략...
Forums:
말씀하신 예만 봐서는 문제가 무엇인지 모르겠어요.A가 A.a 아닌가요
말씀하신 예만 봐서는 문제가 무엇인지 모르겠어요.
A가 A.a 아닌가요?
gcc -c B.c
gcc -shared -o B.so B.o A.a
gcc -c C.c
gcc -o C C.o B.so
이렇게 하면 되던데요. .so 안에 .a를 링크하면 .so 안에 .a의 함수가 포함됩니다.
물론 .o 들도 그렇구요. (다만 .so가 .so를 포함할 수는 없구요.)
댓글 달기