gcc 4.2를 사용하여 Mac OS X에서 일부 기존 C/C++ 코드를 컴파일하려고합니다. 원래 Visual Studio를 사용하여 Windows에 작성되었습니다. 나는 다른 코드에 의해 링크되고있는 정적 라이브러리를 컴파일 중이지만 링커 오류를 이해하기가 어려웠다.gcc로 컴파일 된 정적 라이브러리의 해결되지 않은 기호
Undefined symbols for architecture i386:
"_read_float", referenced from:
_sub_token_values in libcompengine.a(alparce.o)
메소드 read_float 라이브러리에 있으며 컴파일되고 :
내가 정적 라이브러리에 대한 일부 소스 코드를 컴파일하려고
링커는 나에게 다음과 같은 오류를 제공합니다. 나는 나노를 사용하여 라이브러리에서 기호를 덤프 때, 나는 볼이 libcompengine.a (alparce.o)로 정의되지 않은 나타납니다 _read_float 방법 미만 :U _read_float
그리고 더 아래 read_float이 있어야되는 파일에 정의 된 이름은 다음과 같습니다.
00000686 t __ZL10read_floatPKj
이 방법이 올바르게 해석되지 않는 이유는 누구에게 들릴 수 있습니까? 나는 다양한 gcc 컴파일러와 소스 플래그를 사용하여 반나절을 보냈지 만, 불행히도, 나는 아직 우승 한 조합에 대해서는 언급하지 않았다.