2009-11-13 3 views
1

Mac OS X Snow Leopard에서 Qt 및 Poco를 사용하여 작은 데스크탑 응용 프로그램을 만듭니다.Snow Leopard의 링크 오류

Qt는 잘 작동하지만 내가 시작하면 포코와 연결 나는 다음과 같은 경고 얻을 : 나는 10.5 SDK에 연결할 때 또한

ld: warning: in /Developer/SDKs/MacOSX10.6.sdk/usr/local/lib/libPocoFoundation.8.dylib, file is not of required architecture 

을 : 해결하는 방법에 대한

ld: warning: in /Developer/SDKs/MacOSX10.5.sdk/usr/local/lib/libPocoFoundation.8.dylib, file is not of required architecture 

어떤 힌트를 이?

해결! 여기

(나는 또한 BTW 마시고 포럼에 게시) 내 해결 방법입니다 :

문제는 그 아키텍처는 64 비트 스노우 레오파드의 기본 설정을 지정하지 않을 때 동안 OS의 기본의 이전 버전에 32 비트. Poco 빌드 시스템에서 Darwin 설정 파일은 아키텍처를 지정하지 않으므로 32 비트를 선택합니다. 내 해결책은 Darwin 파일을 통해 Darwin_x86_64 구성 파일을 복사하고 'x86_64'의 텍스트 인스턴스를 'i386'으로 대체하는 것이 었습니다. 이렇게하면 32 비트 빌드가 강제됩니다.

다소 hackish 솔루션은하지만,

답변

1

당신이 어딘가에서 라이브러리를 풀다운나요 ...이 깨끗한 방법으로 할 수 있으면 알려주세요? Poco는 모든 소스를 제공합니다. 다시 컴파일하십시오.

+1

특히, 원하는 아키텍처로 다시 컴파일하고'-arch'로 컴파일 할 때 필요한 것을 선택하십시오. –

+1

lipo 명령을 사용하여 2 진 파일의 구조를 점검 할 수 있습니다. (lipo -info/path/to/binary) – Dan

+0

@ gf : SVN 브랜치를 뽑아서 처음부터 빌드했습니다. @ 단 : 감사합니다! 아키텍처는 x86_64입니다. 아마도 386 빌드를해야한다고 생각합니다. – StackedCrooked

관련 문제