问题标签 [android-ndk-r7]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 在 NDK 上编译 protobuf-2.4.1 代码,版本 (android-ndk-r8-windows.)
大家好,我正在尝试在 NDK 版本(android-ndk-r8-windows)上编译 protobuf-2.4.1 代码。
我在下面设置:
我在进行 NDK 构建时遇到以下问题:
build - 使用 gnustl_static 构建外部模块时找不到 libstdc++
我正在将 gnustl_static 添加到外部 Android 模块,并且在构建它时出现以下错误。
当我查看“prebuilt/ndk/android-ndk-r7/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/”时,我找不到 libstdc++.a 有一个 fild libsupc++.a
构建系统正在从它声明的“build/core”文件夹中的 binary.mk 文件中获取它
问题是我不知道如何克服这个错误。
预建文件夹中有许多 libstdc++ 副本,但在列出的位置中找不到它们。发现于
这是我的 Android.mk 文件的缩写形式:
任何人都知道如何解决“无规则制定目标”构建问题?
android - 如何使用 JNI 更改 java 类的字段
我正在使用 ac 本机函数来更改 java 类的整数字段。基本上我想看看如何使用 JNI 实现引用调用。但我收到错误“没有为本地找到实现”。谁能帮我解决这个问题。我是android和java的新手。以下是我编写的代码。如果有人可以改变这个来满足我想要的,我一定会感谢他的帮助。
爪哇代码:
c 本机方法:
下面是我得到的日志:
请帮我
android - Android ICS 4.0 NDK NewStringUTF 正在崩溃应用程序
我在 JNI C/C++ 中有一个方法,它接受 jstring 并返回 jstring,如下所示,
该代码与之前的 android 4.0 版本(如 2.2、2.3 等)完美配合。使用 ICS 4.0 检查 JNI 默认情况下处于启用状态,因此应用程序崩溃并引发以下错误
我对我错在哪里一无所知。如果您在上面看到 NewStringUTF 正在向 c Char* bytes 添加一些垃圾值。
- 关于为什么会发生这种情况的任何想法
- 欢迎任何实现上述目标的替代解决方案
如果你们中的一个人能帮助我,我真的很感激。提前致谢
看我
android - 使用 dlclose(Android NDK) 从应用程序中删除本机库的实例
我已经编译了FFmpeg
库,NDK
并使用它来修剪视频并从我的应用程序中的视频中获取缩略图,所以基本上我已经启动ffmpeg.so
并video-trimmer.so
运行了库。
然而问题很奇怪,trim 或 getThumbnail 操作成功但只有一次,即第一次,第二次操作失败。但是第三次成功了,我用谷歌搜索了两个与我的问题相关的类似帖子
有趣的是,他们提出了相同的解决方案,而我无法解决C
编程语言幼稚的问题。
这是我所做的
尽管调用dlclose
库实例仍然存在于内存中,但我在这里做错了什么?
我知道库实例仍然存在,因为当我在其他活动中再次加载库时,错误消息显示库已经存在于 CL 中。
我想从内存中删除该库的实例,请帮助...
android - 如何在 cocos2d-x 中包含 libprotobuf.a
我需要在我的 cocos2d-x android 项目中使用 google 的 protobuf。我在项目中包含头文件和 C++ 文件。但是当我尝试通过 NDK 编译项目时,编译器返回错误:
jni/../../Classes/PromowallLibrary/protocol.pb.cpp:55: error: undefined reference to 'google::protobuf::DescriptorPool::generated_pool()'
jni/../../Classes/PromowallLibrary/protocol.pb.cpp:55: error: undefined reference to 'google::protobuf::DescriptorPool::FindFileByName(std::basic_string, std::allocator > const&) const'
jni/../../Classes/PromowallLibrary/protocol.pb.cpp:56: error: undefined reference to 'google::protobuf::internal::LogMessage::LogMessage(google::protobuf::LogLevel, char const*, int)'
等等。如何指向 -lprotobuf 库?我试过了:
LOCAL_LDLIBS := -lprotobuf \
但这不起作用
更新:
现在我尝试这样做 - 我创建静态模块:
现在我得到这样的错误:
/home/ivan/android/android_ndk/toolchains/arm-linux-androideabi-4.6.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.3/../../../../arm-linux-androideabi/bin/ld: error: ./obj/local/armeabi/libprotobuf.a(common.o): incompatible target
/home/ivan/android/android_ndk/toolchains/arm-linux-androideabi-4.6.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.3/../../../../arm-linux-androideabi/bin/ld: error: ./obj/local/armeabi/libprotobuf.a(generated_message_util.o): incompatible target
/home/ivan/android/android_ndk/toolchains/arm-linux-androideabi-4.6.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.3/../../../../arm-linux-androideabi/bin/ld: error: ./obj/local/armeabi/libprotobuf.a(message_lite.o): incompatible target
/home/ivan/android/android_ndk/toolchains/arm-linux-androideabi-4.6.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.3/../../../../arm-linux-androideabi/bin/ld: error: ./obj/local/armeabi/libprotobuf.a(repeated_field.o): incompatible target
/home/ivan/android/android_ndk/toolchains/arm-linux-androideabi-4.6.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.3/../../../../arm-linux-androideabi/bin/ld: error: ./obj/local/armeabi/libprotobuf.a(wire_format_lite.o): incompatible target
android - 如何使用 arm-linux-androideabi-gcc 制作可执行文件(.exe)?
我有一个共享库,它使用 arm-linux-androideabi-gcc 编译器在 c 构建中编写,现在我想测试我的共享库,所以我编写了一个示例 c,它调用该共享库(.so)并且我想制作 .exe ,所以当我编译时出现这样的错误,这是我的make文件
我收到以下错误
我希望我在我的 make 中给出了正确的链接,我无法理解这背后的错误,有人知道如何使用 arm-linux-androideabi-gcc 制作 exe。
android - 安卓版 ImageMagic
嗨,我尝试为 android 编译https://github.com/lilac/Android-ImageMagick 库,但它没有用。然后我发现了这个库https://github.com/puelocesar/android-lib-magick我不需要编译。当我运行此库时,它已安装在我的 Galaxy 4.1 设备上,但除了黑屏外没有显示任何内容,并且在一段时间后退出应用程序而不会在 log cat 中显示任何错误。谁能告诉我如何使这个库正常工作?
android - -Android 中的 O2 标志
当我使用“-O2”标志时,在 linux 中的性能会大大提高,但是当我转到 android 时速度很慢,我想在 android 中构建我的共享库,我使用 -O2 标志,但性能很慢,
android中是否有任何其他标志可用于提高性能。
android - android ndk未定义对方法的引用
嗨对不起,我正在尝试编译一些静态类,即 jsmn.c、json.c 和 buf.c,它们是我从https://github.com/alisdair/jsmn-example下载的 jsmn json 库的一部分/下载。
我正在编译两个 STATIC_LIBRARIES lib1 和 json_library.lib1 具有依赖于 json_library 的本机代码。然后我将两个库制作成一个包含 gnustl_static 和 lib1的共享库
我的文件夹结构如下
jni/lib1/ANdroid.mk
jni/Android.mk
jni/应用程序.mk
所以在 lib1 我有一个类,它从名为 json_tokenise的 json 库中调用一个方法
我收到以下错误
当我查看 [obj/local/armeabi-v7a/ 内部时,我可以看到 libjson_library.a liblib1.a libgnustl_static.a正在为 armabi-v7 生成,并且由于错误而无法生成 lib2。
请帮助或指导我哪里出错了我花了两天时间做这件事,我是 NDK 的新手。