Mapbox源代码构建无法运行或调试

时间:2016-05-08 02:17:53

标签: android c++ debugging sample mapbox-gl

我已经工作了很长时间......我试图用Mapbox在Android上构建最基本的项目,但到目前为止还没有运气。

我如何构建它有2个限制。

1)从源代码构建

2)应用程序必须可以调试到C ++ / C源

我使用了以下说明:

https://github.com/mapbox/mapbox-gl-native/blob/master/INSTALL.md以及此处链接的其他网页。

这些页面没有解释如何创建测试应用程序,它们只告诉您如何构建库。我已经按照这些并建立了图书馆。我使用以下方法创建了一个应用程序:

https://www.mapbox.com/help/first-steps-android-sdk/

但是当我在C ++库函数中运行它时崩溃了。

似乎有理由相信Mapbox的开发者必须这样做,但我不知道如何。我甚至无法使用Mapbox库源构建一个工作示例,更不用说调试它了。

我找到了以下文档声称可以帮助调试C / C ++ Android应用程序,但要么不清楚,要么没有足够的信息来完成使用此方法调试源库。

http://tools.android.com/tech-docs/new-build-system/gradle-experimental

执行此操作的示例项目非常有用。即使是在没有调试的情况下从构建工作(不崩溃)简单示例的人也会让我朝着正确的方向前进。我仍然需要调试它,但至少我会知道如何从源代码构建一个工作示例。

我已向Mapbox寻求帮助。他们通常回答问我回答的问题,“你需要真正建立源头吗?”在我回答了他们的一些问题之后,他们说他们会回复我。几个星期没有回复,我问他们是否有我的问题的答案,他们没有对话的记忆和循环重新开始。他们似乎太忙了,无法回答我的问题。

对这项简单而难以捉摸的任务的任何帮助将不胜感激。

谢谢。

米奇

更新:

我现在可以让项目构建,但仍然没有运气或调试的运气。我找到了一个看起来可能有用的页面:

https://github.com/mapbox/mapbox-gl-native/blob/master/platform/android/DISTRIBUTE.md

这些说明不起作用并报告找不到jni.h文件。我试图通过

纠正这个问题
BUILDTYPE=Debug make apackage -I$JAVA_HOME/include

但是,这会产生类似的错误:

../../ include / mbgl / gl / gl.hpp:30:14:致命错误:找不到'GLES2 / gl2.h'文件

我是否应该从Android Studio内部构建以使调试工作或使用命令行?

更新:

也可以通过调用来获取错误:

BUILDTYPE = Debug make android-lib-x86-64

但是没有得到它:

BUILDTYPE = Debug make android-lib-x86

此外,当我在Android Studio下运行时,以下行崩溃:

static {
    System.loadLibrary("mapbox-gl");
}

内部:

mapbox-gl-native/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java

这是否意味着Mapbox的指令缺少将库放入apk的步骤?

1 个答案:

答案 0 :(得分:2)

在Linux上构建Mapbox GL Native的文档刚刚更新:

https://github.com/mapbox/mapbox-gl-native/blob/master/platform/android/CONTRIBUTING_LINUX.md

您应该能够构建测试应用程序并按照说明安装在手机/模拟器上。

在全新安装的Ubuntu 16.04 LTS上测试。