어떤 프로그램을 컴파일할때 같이 링크되는 라이브러리가 여러종류가 있다고 할때 어떤 라이브러리는 static 으로 어떤 라이브러리는 shared로 선택해서 컴파일하려면 어떻게 해야되죠?
질문 요지를 정확하게 파악 했는지 모르지만 static -> ???.a 나(libaaa.a) Shared -> ???.so 나 (libbbb.so) link 시 따로 지정 하는건 없을겁니다. 그냥 -laaa -lbbb 이렇게 하면 됩니다.
만약에 LD_LIBRARY_PATH로 잡혀있는곳에 libaaa.a libaaa.so libbbb.a libbbb.so 라는 라이브러리들이 static, shared 버젼이 동시에 있다고 하면
aaa라이브러리는 static 버젼으로 bbb라이브러리는 shared 버젼으로 하는 식으로 골라서 링크해서 컴파일 하려면 어떻게 해야하는지 가 궁금하다는 것이였지여~ =_=; 고수들의 조언 부탁드림다...
그러면 link시 직접 .so 파일을 지정 하시면 되죠.
cc -o test_prg -laaa bbb.so test_prg.c 이렇게요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
Re: 컴파일 할때 static or shared library 문제
질문 요지를 정확하게 파악 했는지 모르지만
static -> ???.a 나(libaaa.a)
Shared -> ???.so 나 (libbbb.so) link 시 따로 지정 하는건 없을겁니다.
그냥 -laaa -lbbb 이렇게 하면 됩니다.
Re^2: 훔~ 다시 말씀드리면여 =_=;
만약에 LD_LIBRARY_PATH로 잡혀있는곳에
libaaa.a
libaaa.so
libbbb.a
libbbb.so
라는 라이브러리들이 static, shared 버젼이
동시에 있다고 하면
aaa라이브러리는 static 버젼으로
bbb라이브러리는 shared 버젼으로 하는 식으로
골라서 링크해서 컴파일 하려면 어떻게 해야하는지
가 궁금하다는 것이였지여~ =_=;
고수들의 조언 부탁드림다...
Re^3: 훔~ 다시 말씀드리면여 =_=;
그러면 link시 직접 .so 파일을 지정 하시면 되죠.
cc -o test_prg -laaa bbb.so test_prg.c 이렇게요.
댓글 달기