【问题标题】:Android-NDK: Fatal signal 11 (SIGSEGV) on Windows 64 onlyAndroid-NDK:仅适用于 Windows 64 的致命信号 11 (SIGSEGV)
【发布时间】:2013-05-09 02:51:50
【问题描述】:

当我在我的 Mac 上运行该项目时,一切都很好。在 Windows 64 上运行的相同项目在启动时崩溃。

两者都使用 NDK8e。我怎样才能知道有什么区别?

Windows 64

05-09 04:25:51.310: D/dalvikvm(16908): Shared lib '/data/data/com.evotegra.aCoDriver/lib/libjsqlite.so' already loaded in same CL 0x4219e688
05-09 04:25:51.335: A/libc(16908): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 16908 (tegra.aCoDriver)

苹果机

05-09 04:49:09.070: D/dalvikvm(307): Shared lib '/data/data/com.evotegra.aCoDriver/lib/libjsqlite.so' already loaded in same CL 0x4219d5f8
05-09 04:49:40.735: V/SoundPoolThread(27591): beginThread

【问题讨论】:

  • 你找到解决这个问题的方法了吗

标签: android android-ndk


【解决方案1】:

在这种情况下,我在项目库文件夹中签入了一个架构错误的旧库。只要库在那里并且源没有改变,编译器就不会替换它,因此它总是崩溃。移除obj文件夹,查看libs文件夹下所有库的架构

【讨论】:

  • 非常感谢您的回答!几周以来我一直面临同样的问题!你值得 +1。
  • 您好,我以为我已经解决了这个问题,但它仍然在发生!我的情况与问题的情况正好相反(在 Windows 中工作,而不是在 mac 中)。您知道哪些库文件以及如何检查所有库的架构吗?
  • 尝试删除libs文件夹中的所有共享库。
  • 尝试使用 ndk_stack。这里的例子stackoverflow.com/questions/18436383/…
  • 我也尝试过 ndk-stack,发现 cocos2dx 类的析构函数、removeAllChildren() 函数和这个:/mnt/asec/com..../lib/*** .so: libgcc2.c 中的例程 std::basic_string, std::allocator >::basic_string(std::string const&): ?对这个有什么想法吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多