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