【问题标题】:Breakpad not building on ubuntu x64 for androidBreakpad 没有在 ubuntu x64 for android 上构建
【发布时间】:2015-07-24 08:44:26
【问题描述】:

我正在尝试使用 android ndk 构建breakpad。

如果我关注these instructions: 我把这个错误放在底部。

如果我将 breakpad 附加到我的 cocos2d-x 项目,也会出现同样的错误。看起来是ndk构建问题。

1 次构建神秘成功,但我无法重现。

我的操作系统是 ubuntu 15x64, android-sdk_r24.3.3-linux 安卓-ndk-r10e

/pr/breakapp$ ndk-build
Android NDK: WARNING: APP_PLATFORM android-17 is larger than android:minSdkVersion 8 in ./AndroidManifest.xml    
[armeabi] Compile++ thumb: native <= native.cpp
[armeabi] Compile++ arm  : breakpad_client <= crash_generation_client.cc
[armeabi] Compile++ arm  : breakpad_client <= exception_handler.cc
[armeabi] Compile++ arm  : breakpad_client <= minidump_descriptor.cc
[armeabi] Compile++ arm  : breakpad_client <= log.cc
[armeabi] Compile++ arm  : breakpad_client <= linux_dumper.cc
jni/../../breakpad/android/google_breakpad/../../src/client/linux/minidump_writer/linux_dumper.cc: In member function 'void google_breakpad::LinuxDumper::ParseLoadedElfProgramHeaders(Elf32_Ehdr*, uintptr_t, uintptr_t*, uintptr_t*, size_t*)':
jni/../../breakpad/android/google_breakpad/../../src/client/linux/minidump_writer/linux_dumper.cc:437:30: error: 'UINTPTR_MAX' was not declared in this scope
   const uintptr_t max_addr = UINTPTR_MAX;
                              ^
make: *** [obj/local/armeabi/objs/breakpad_client/src/client/linux/minidump_writer/linux_dumper.o] Error 1

【问题讨论】:

  • 在 application.mk 中用 APP_CPPFLAGS := -std=gnu++11 替换 APP_CPPFLAGS := -stdc++11 解决了问题

标签: ubuntu android-ndk google-breakpad


【解决方案1】:

我想定义__STDC_LIMIT_MACROS

例如像APP_CPPFLAGS := -std=gnu++11 -D__STDC_LIMIT_MACROS 在你的Application.mk

【讨论】:

    【解决方案2】:

    添加:

    LOCAL_CPPFLAGS := -std=c++11 -D__STDC_LIMIT_MACROS
    

    到 android/google_breakpad/Android.mk 应该可以解决问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-29
      • 1970-01-01
      • 2014-10-09
      • 2019-05-23
      • 1970-01-01
      • 2014-03-25
      相关资源
      最近更新 更多