안녕하세요
Ubuntu에서 libpng를 이용해 png관련 C프로그램을 짜고 있습니다.
그런데, 컴파일 시
LFSR_cipher.c:(.text+0x4dc): undefined reference to `png_sig_cmp'
에러가 나네요 -_-;
특이한 건, 컴파일하는 소스 내에서 사용하는 다른 png관련 함수도 많은데 위 함수에 대해서만 linking 에러가 난다는 점입니다.
어떻게 하면 좋은가요?
링크에러가 발생할수 있는상황을 생각나는데로 말씀드려보자면
1. 주소가 다를때
컴파일시 베이스 주소가 다를시 당연히 링크 에러
2. 둘중에 하나가 이름이 다를때
특히 c++경우 네임 맹글링때문에 둘중에 하나가 C고 하나가 c++이라면 에러
이럴때 링크하기 직전에 개별 컴파일된 코드의 레퍼런스를 확인
3. 함수가 존재하지않는경우
타 오브젝트 파일에서 링크시켰을때 한마디로 없는 경우
가 있습니다 ^^
텍스트 포맷에 대한 자세한 정보
<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]
링크에러
링크에러가 발생할수 있는상황을 생각나는데로 말씀드려보자면
1. 주소가 다를때
컴파일시 베이스 주소가 다를시 당연히 링크 에러
2. 둘중에 하나가 이름이 다를때
특히 c++경우 네임 맹글링때문에 둘중에 하나가 C고 하나가 c++이라면 에러
이럴때 링크하기 직전에 개별 컴파일된 코드의 레퍼런스를 확인
3. 함수가 존재하지않는경우
타 오브젝트 파일에서 링크시켰을때 한마디로 없는 경우
가 있습니다 ^^
댓글 달기