2012-03-06 18 views
1

XCode 4.3使用錯誤的鏈接dylibs配置了Release配置iOS應用程序(請參閱底部的錯誤)。

該應用程序在設備上啓動後立即崩潰。

在cli或Xcode 4.2.1上使用xcodebuild構建應用程序。

應用程序再次鏈接CoreLocation(並在目標中)和iOS 5.x CLGeocoder被使用。在iOS 4.x上使用MKReverseGeoCoder。 (NSClassFromString() returns a class even when class should not be available

只有在您構建存檔並將應用程序作爲IPA文件共享時纔會發生。在iOS設備(4.x)上啓動應用程序後立即啓動。

Dyld Error Message: Symbol not found: _OBJC_CLASS_$_CLGeocoder 
Referenced from: /var/mobile/Applications/*********/AppName.app/AppName 
Expected in: /System/Library/Frameworks/CoreLocation.framework/CoreLocation 
in /var/mobile/Applications/*********/AppName.app/AppName 
Dyld Version: 179.7 

我該如何擺脫這個錯誤?

+0

您是否找到解決此錯誤的解決方案? – krunal 2012-03-30 13:57:18

+0

不,我沒有找到解決方案。報告給蘋果的錯誤也是「公開」。 – x2on 2012-04-01 16:46:57

+0

我得到了同樣的錯誤!也許我們應該爲此付出代價,還是您找到了解決方案? – nverinaud 2012-06-20 06:50:04

回答

3

CoreLocation框架添加到您的項目包中。

+0

CoreLocation已經在目標和項目包中! – x2on 2012-03-22 09:52:02

4

我收到了同樣的錯誤,甚至還試圖發表bllubbor你在你的問題聯繫到線程上的解決方案後:

if (NSClassFromString(@"CLGeocoder") && 
    [NSClassFromString(@"CLGeocoder") instancesRespondToSelector: 
@selector(reverseGeocodeLocation:completionHandler:) ]) { 

         //iOS 5 or later  
    } 

我能夠也使確保CoreLocation框架來解決它在目標的構建設置中弱連接(即設置爲可選,而不是必需)。

相關問題