2014-12-19 3 views
0

Apple에서 요구하는대로 64 비트 장치를 지원하도록 기존 프로젝트를 만들려고합니다. 프로젝트는 정적 라이브러리로 Three20을 사용합니다.정적 라이브러리 빌드 오류가있는 IOS 64 비트

저는 Arm64 아키텍처가있는 Three320 라이브러리를 이미 다시 작성했습니다.

하지만 지금 내 프로젝트는 여전히 오류를 구축 얻었다 "아키텍처 x86_64에 찾을 수 없습니다 기호 (들)"아래로 :

(null): "_OBJC_CLASS_$_TTDefaultStyleSheet", referenced from: 

(null): _OBJC_CLASS_$_TitleStyleSheet in SettingsViewController.o 

(null): "_OBJC_CLASS_$_TTStyleSheet", referenced from: 

(null): Objc-class-ref in DailyInvestmentViewController.o 

(null): "_OBJC_CLASS_$_TTStyledText", referenced from: 

(null): Objc-class-ref in DailyInvestmentViewController.o 

(null): "_OBJC_CLASS_$_TTStyledTextLabel", referenced from: 

(null): Objc-class-ref in DailyInvestmentCustomCell.o 

(null): Objc-class-ref in DailyInvestmentViewController.o 

(null): "_OBJC_CLASS_$_TTTextStyle", referenced from: 

(null): Objc-class-ref in SettingsViewController.o 

(null): "_OBJC_METACLASS_$_TTDefaultStyleSheet", referenced from: 

(null): _OBJC_METACLASS_$_TitleStyleSheet in SettingsViewController.o 

(null): Symbol(s) not found for architecture i386 

(null): Linker command failed with exit code 1 (use -v to see invocation) 

누군가가 해결 방법을 말해 수 있습니다. 고마워요. 죄송합니다. 영어가 나쁩니다.

+0

출력에서 ​​i386에 해당하는 기호가 없습니다. 시뮬레이터 용으로 다시 컴파일해야 할 필요가 있습니까? – MuertoExcobito

+0

@Roger i386-64 아키텍처의 슬라이스가있는 Fat 라이브러리가 필요합니다. –

답변

0

상태에 따라 i386이 아닌 arm 용 라이브러리가 다시 빌드되었습니다. 하지만 i386_64 인 64 비트 시뮬레이터 용 빌드를 시도합니다. 여전히 플랫폼을 지원하는 라이브러리가 없습니다.

i386 플랫폼 용 lib의 두 번째 버전을 빌드하려면 시뮬레이터 빌드에서 64 비트 지원을 사용해야합니다. 이렇게하면 제작 용 lib가 팔 전용 바이너리로 더 작게 유지됩니다.

0

오늘 아침에 i386 및 x86_64 용으로 빌드 된 내 정적 라이브러리로이 문제가 발생했습니다.

Build Settings의 Architectures 속성을 $ (ARCHS_STANDARD_INCLUDING_64_BIT) (으)로 변경 한 사항이 수정되었습니다. 나는 청소를하고, Xcode를 다시 시작했으며, 효과가있었습니다.

행운을 빈다.

+0

Xcode 6.1에서는 아키텍처 x86_64로 라이브러리를 재구성 한 다음 오류없이 기본 앱을 성공적으로 재구성했습니다. –

관련 문제