草庐IT

android - 在android ndk中链接静态库

我正在尝试从http://developer.nvidia.com/tegra-resources编译nvfile库,在androidndk示例中,libs文件夹。不管怎样,因为我真的不需要整套库,所以我拿出了我需要的那个,似乎是它的依赖项。这是用于编译它们的Android.mk文件。include$(CLEAR_VARS)LOCAL_MODULE:=nvthreadLOCAL_CFLAGS:=-Wall-gLOCAL_LDFLAGS:=-Wl,-Map,xxx.mapLOCAL_SRC_FILES:=nv/nv_thread/nv_thread.cLOCAL_C_INCLUDES:=

android - 使用预构建的静态库进行 Android NDK 开发

我正在尝试构建一个使用来自某些现有C++代码的静态库的Android应用程序。但是我似乎无法构建东西,这是我到目前为止采取的步骤..我有ndk-r5b并根据ndk/docs/STANDALINE-TOOLCHAIN.html构建了独立的工具链。然后,我使用独立的工具链编译器(arm-linux-androideabi-g++)而不是g++作为编译我需要的静态库的Makefile中的CXX标志。这编译没有错误,并产生了3个静态库。以下是用于构建预构建库的一些标志的代码fragment:CXX=arm-linux-androideabi-g++SYSTEM_LIBS=-lstdc++-lm

Android NDK 和 LOCAL_ARM_MODE 标志

在我当前的Androidnative代码build设置中,APP_ABI被定义为Application.mk中的armeabi-v7a。对于我正在构建的一些库,我看到LOCAL_ARM_MODE在Android.mk中被定义为arm。我还需要扩展此设置以构建x86。从另一篇文章看来,使用“APP_ABI=all”似乎是更好的解决方案。我只是想知道是否也必须更改LOCAL_ARM_MODE。这个标志到底有什么作用? 最佳答案 虽然这是一篇旧帖子,但我只想指出接受的答案是不正确的。LOCAL_ARM_MODE可以设置为“arm”或“th

android - 使用 ADT/Eclipse 为 NDK 设置 C++11 (std::thread)

我一直在尝试使用C++11。我正在开发一个android项目,我想使用std::mutex。与OpenCV一起但无论我做什么,我似乎都无法修复Type'mutex'couldnotberesolved错误。我已经尝试按照我在SO和其他地方找到的教程进行操作。LINK1LINK2LINK3LINK4ADTv22.3.0-887826已安装C/C++编译器(CDT)看了这么多教程,现在真是一团糟。所以我将解释我当前的设置项目>属性>C/C++构建>工具链编辑器当前的工具链是“跨GCC”当前生成器是“Android生成器”项目>属性>C/C++构建>发现选项编译调用命令为“gcc”编译器调用

Android NDK #define 问题

当我将#define添加到main.cpp或从main.cpp调用的头文件之一时,它似乎没有在其他文件中定义。例如,在main.cpp中我可能会这样做:#defineTEST_FOO1然后在我的另一个文件中,例如secondfile.cpp,TEST_FOO被忽略,就好像它从未被定义过一样:#ifTEST_FOO//dosomething即使在Android.mk文件中我将secondfile.cpp放在main.cpp之后:LOCAL_SRC_FILES:=main.cpp\secondfile.cpp有没有办法在实际代码中#defineAndroidNDK中的值?

Android NDK "ndk-build"识别为内部或外部命令批处理文件

如何安装android-ndk。我已经为ndk设置了路径,但在执行“ndk-build”命令时仍然出现错误。fya我正在使用Windows操作系统。 最佳答案 它对我有用:打开命令提示符并导航到项目c:\eclipse\workspace\myproject然后我从androifndk文件夹中执行了ndk-build脚本c:\eclipse\workspace\myproject>c:\android-ndk-r8d\ndk-build 关于AndroidNDK"ndk-build"识别

android - 使用 NDK 时 Unresolved inclusion 错误

我正在使用AndroidNDK,但JNI文件夹中的.c文件显示未解析包含错误,如图所示:请帮助我解决此问题。我已经尝试了几乎所有我能在互联网上找到但无法解决的问题。对于C/C++项目,我可以使用buildpath\pathsandsymbols选项来解决包含问题,但对于android项目,此选项在项目属性中不可用。 最佳答案 这是Windows上ADT插件中的错误(或者更确切地说,这听起来像是与更新版本的CDTforEclipse不兼容),记录在此处:http://code.google.com/p/android/issues/d

android - Android NDK OpenGL 应用程序的 float 或定点数?

我正在尝试决定是对我的应用程序(大部分是C++)中的所有3D相关元素主要使用float还是整数。我知道大多数基于ARM的设备不支持硬件浮点,因此我认为使用float进行任何繁重的工作都会明显变慢。但是,我计划准备大部分数据(即在适用的情况下使用顶点缓冲区并使用变化不大的矩阵进行转换),所以我只是将数据塞进OpenGL的喉咙里。我是否可以假设这或多或少直接进入GPU,并且速度相当快?(顺便说一句,最低要求是OpenGLES2.0,因此大概不包括旧的基于1.x的手机。)另外-当我混合和匹配整数和float时,惩罚如何?假设我所有的几何图形都只是预先构建的浮点缓冲区,但我对矩阵使用整数,因为

Android NDK R8E 缺少 stdlib.h

我正在使用AndroidNDK(android-ndk-r8e)测试一些原生库代码。native库是从其makefile而不是Android修改后的构建系统构建的。使用makefile而不是Android的构建系统是项目要求(OpenSSL和FIPS)。需要为API14(Android4.0)、API16(Android4.1)和API17(Android4.2)构建库。虽然它使用了库的makefile,但我们使用的是android-ndk-r8e-linux-x86_64(arm-linux-androideabi-4.7和friend)的预构建工具链。似乎stdlib.h从3个AP

android - 如何以编程方式终止 android NDK( native Activity )应用程序?

当应用程序请求终止时,我尝试从代码中调用ANativeActivity_finish(state->activity)。这有效,但是我的应用程序无法重新启动,它在LogCat中显示以下内容:W/ActivityManager(238):DuplicatefinishrequestforHistoryRecord当用户按下后退按钮时,一切似乎都正常工作,但是我需要能够从我的应用程序中发出退出命令。有什么建议吗? 最佳答案 就是这样。我不知道您具体是怎么做的,我猜您是在代码末尾执行该调用,然后从android_main返回。您必须ANa