0
Android/NDK項目,與NDK版本一直工作到r8c。在8d和8e,我得到一個編譯錯誤消息在armeabi-V7A編譯:NDK錯誤:「無法解析」.data.rel.ro.local「
Compile++ thumb : myproject <= MyFile.cpp
C:\cygwin\tmp\ccFXOc2F.s: Assembler messages:
C:\cygwin\tmp\ccFXOc2F.s:1935: Error: can't resolve `.data.rel.ro.local' {.data.rel.ro.local section} - `.LPIC44' {*UND* section}
的armeabi,MIPS和x86建立在同一個項目是成功的。
它可靠地彈出在同一個文件上。該文件沒有什麼特別的 - vanilla C++,它編譯並在許多其他平臺(iOS,Windows,NDK r8c等)上工作。沒有STL。它確實定義了一個健康數量的字符串常量(AKA初始化只讀數據)。可能會發生什麼?
已經嘗試完全重建,甚至刪除了obj
文件夾。
C++的標誌是:
LOCAL_CPPFLAGS := -fshort-wchar -fsigned-char -Wno-psabi
我知道NDK自帶GCC的多個版本;工具鏈可能會改變嗎?究竟如何?
你能檢查臨時彙編文件的第1935行是什麼嗎? – auselen 2013-03-22 19:21:22
否;該程序集將在* make *終止時從臨時文件夾中消失。相反,我使用了一種經過驗證的真實技術來評論文件中每個函數的主體,然後逐漸添加代碼直到錯誤再次出現。這種方法收斂於O(log N)時間的故障線路。 :) – 2013-03-23 19:52:47