linux gcc C99 표준으로 공유라이브러리 abc.so 를 빌드하고
C90 으로 test 라는 프로그램을 빌드하고 abc.so 를 공유라브러리로 링크에서 사용시
이게 run time 시에 문제가 될 수 있나요?
혹시나 하는 마음에 질문드립니다.
흐음... 흥미로운 질문입니다. 같은 버젼의 gcc를 사용한다면 문제가 없어야할 것 같은데 자신은 없네요. C99에서 binary 호환성을 깰만한 정도의 "언어" 변화가 도입되지는 않았을 것 같습니다. 깨지더라도 라이브러리 문제겠지요. 표준 라이브러리는 표준이 바뀌면서 ABI incompatibility가 생길 수 있겠지만 사용자가 직접 작성한 것들은 binary 수준에서는 호환되어야 할 것 같습니다. 아마도 그렇지 않을까요?
텍스트 포맷에 대한 자세한 정보
<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]
흐음... 흥미로운 질문입니다. 같은 버젼의 gcc를
흐음... 흥미로운 질문입니다. 같은 버젼의 gcc를 사용한다면 문제가 없어야할 것 같은데 자신은 없네요. C99에서 binary 호환성을 깰만한 정도의 "언어" 변화가 도입되지는 않았을 것 같습니다. 깨지더라도 라이브러리 문제겠지요. 표준 라이브러리는 표준이 바뀌면서 ABI incompatibility가 생길 수 있겠지만 사용자가 직접 작성한 것들은 binary 수준에서는 호환되어야 할 것 같습니다. 아마도 그렇지 않을까요?
댓글 달기