2013-11-26 163 views
1

我成功地將Unity3D項目轉換爲更像NativeApp(Storyboard)的方式切換到Unity。NativeApp中的Unity3D集成 - Keyboard.mm編譯但UnityKeyboard_GetText未定義符號

現在我正在嘗試將Unity3D集成到NativeApp中。在現有NativeApp中小心地複製Unity3D XCode項目。一切都只是這非常令人沮喪的錯誤是沒有意義的相當順利:

Undefined symbols for architecture armv7: 
    "UnityKeyboard_GetText(std::string*)", referenced from: 
     KeyboardOnScreen::getText() const in libiPhone-lib.a(iPhoneKeyboard.o) 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

libiPhone-lib.a的檢查顯示以下內容:

libiPhone-lib.a: Mach-O universal binary with 2 architectures 
libiPhone-lib.a (for architecture armv7):  current ar archive random library 
libiPhone-lib.a (for architecture i386):  current ar archive random library 

我已驗證Keyboard.mm正在編譯幷包含所謂的未定義的引用。

UPDATE:

基本上有一些關鍵的項目構建設置丟失。最重要的是C++ lib與(std vs gnu)以及Unity項目的運行腳本鏈接。我將在兩天內發佈更具體的答案。

+0

您是否遇到過可以寫出答案的解決方案?我們遇到同樣的問題。 – Gandalf458

+3

我忘了這件事。該解決方案必須改變與哪個C++庫鏈接。我可以在下次編碼時找到確切的設置。基本上,爲了讓你現在就去,從Unity導出IOS項目,然後比較該項目中的C/C++設置和你的。鏈接的編譯器和C/C++庫需求相同。 – Halsafar

+0

我的同事從你以前離開的線索中發現了它。謝謝! – Gandalf458

回答

0

您必須禁用C++ 11支持您的統一生成的項目。

相關問題