컴파일러 : aCC A6.0.0.00
OS : HP-UX U ia64 11.23
CFLAGS HP-UX ia64 +DD64
64bit 컴파일 할 때
ld: Can't find library or mismatched ABI for -lXXXXX
이런 에러 메세지를 보게 된다면
1. 컴파일 옵션 확인 할 것.
추가할 컴파일 옵션 : +DD64
컴파일할 대상과 링크된 라이브러리가 서로 다른 bit로 컴파일 되었을 경우 발생
컴파일할 대상의 컴파일 옵션에 추가해서 컴파일해보고(ex. $cc +DD64... 요렇게) 그래도 같은 에러가 발생하면 컴파일된 라이브러리가 64bit로 컴파일 되었는지도 확인하여 해당 옵션을 넣으주면 됨
또한 C 컴파일 옵션 뿐 아니라 ld 옵션(-lc에러등..)에도 사용하도록 한다.
ld: Can't find library or mismatched ABI for -lc
LDFLAG = +DD64 -Wl,+s
+DD64 vs +DA2.OW
http://forums11.itrc.hp.com/service/forums/questionanswer.do?threadId=1233973
aCC 컴파일러 옵션 정보 (HP 홈페이지 제공)
2. GNU ar(아카이브) 또는 컴파일러를 사용하였는지?
추가할 컴파일 옵션 : -mlp64