2011-09-15 50 views
3

我正在使用Twitter API的應用程序。鏈接錯誤 - 缺少所需的架構i386中找不到文件符號

應用程序時,它掛接到iOS設備上運行良好,但是當我從ARMv6的提供i386得到它在模擬器上運行改變體系結構我得到這個錯誤:

ld: warning: ignoring file  /Users/username/Desktop/tweetsAloud/tweets2/tweetsAloud/Src/NeoSpeech/lib-i iphoneos/libvt_eng_julie.a, missing required architecture i386 in file 
Undefined symbols for architecture i386: 
    "_VT_LOADTTS_ENG", referenced from: 
     -[TweetsViewController viewWillAppear:] in TweetsViewController.o 
    "_VT_UNLOADTTS_ENG", referenced from: 
     -[TweetsViewController viewWillDisappear:] in TweetsViewController.o 
    "_VT_TextToFile_ENG", referenced from: 
     -[TweetsViewController readyStringToPlay:] in TweetsViewController.o 
ld: symbol(s) not found for architecture i386 
collect2: ld returned 1 exit status 

所以我有已經閱讀了很多建議,並嘗試了大部分建議,但運氣不佳。

我首先確定我有我的所有框架,然後我嘗試編輯project.pbxproj,但仍然沒有工作。

我已經嘗試清洗並更改構建設置。

任何人有任何想法,爲什麼我得到這個錯誤信息?

回答

5

您可能將您的i386項目與庫NeoSpeech/lib -i iphoneos/libvt_eng_julie.a的arm構建鏈接起來。這是警告的意思。

如果你有一個i386版本,如果這個lib,然後改變你的鏈接器設置指向該版本。如果你沒有這個lib的i386版本,那麼你必須從作者那裏得到它,或者如果你有源代碼,你自己編譯它。

祝你好運。

+1

你如何編譯i386版本的源代碼?我需要在XCode中做什麼設置?在此先感謝... – MyCSharpCorner

+0

您是否擁有此庫的源代碼和XCode項目?如果是,那麼你需要建立模擬器目標。如果你從某個地方獲得了這個庫,那麼你可能在同一個地方獲得i386版本。 – Miguel

相關問題