2014-04-30 33 views
1

我剛剛完成了Xamarin Studio的更新,而我的iOS應用程序現在在嘗試編譯時出現了幾個鏈接錯誤。所有鏈接錯誤都與我的libOfflineRequest靜態庫有關,它使用ASIHTTPRequest。下面是從構建輸出鏈接錯誤之一的例子:

error MT5212: Native linking failed, duplicate symbol: '_OBJC_CLASS_$_ASIHTTPRequest'. 
error MT5213: Duplicate symbol in: /Users/brucehill/Projects/Mobileforms/StaticLibs/OfflineRequest/libOfflineRequest.a(ASIHTTPRequest.o) (Location related to previous error) 
error MT5213: Duplicate symbol in: /Users/brucehill/Projects/Mobileforms/obj/iPhone/Debug/mtouch-cache/registrar.armv7.o (Location related to previous error) 

在我看來,我的圖書館與mtouch-cache衝突,但我不使用mtouch-cache,那麼有沒有從我一些方法來排除這在鏈接?

+0

您是否在自己的代碼中定義了一個ASIHTTPRequest類? –

+0

是的,我鏈接的庫libOfflineRequest.a使用ASIHTTPRequest。 – BruceHill

+0

你可以在http://bugzilla.xamarin.com上提交一個bug,附上這個項目以便我們看看它嗎? –

回答

0

爲防萬一別人遇到這個問題,這裏是我如何解決它。我右鍵點擊我的項目,導航到iOS Build,然後在現場「附加型mTouch論據」我增加了以下選項:

--registrar:oldstatic

有一次,我補充說,我的應用程序重新正確編譯。

+2

我試過這個,得到了「錯誤:Legacy註冊商(--registrar:legacy | legacystatic | legacydynamic)不支持統一API」 –

+0

嗯。可能是這個選項已經在Xamarin Studio的最新更新中被刪除了。 :(我沒有做過任何更新,因爲我做了這個職位。 – BruceHill