C代码在android ndk中给出错误 [英] C code gives error in android ndk
本文介绍了C代码在android ndk中给出错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
亲爱的,
请帮助我.....
Hi Dear,
Please help me.....
JavaVM *m_vm;
JNIEnv* env;
jobject obj;
JavaVMInitArgs vm_args;
long status = JNI_CreateJavaVM(&m_vm,(void **)&env, &vm_args);
每当在android ndk中编译此代码时,都会报错,错误为
Whenever compile of this code in android ndk.this give errorand the error is
allwikan@ubuntu:~/Desktop/NDKDemo$ ndk-build
Compile thumb : ndk_demo <= ndk_demo.c
jni/ndk_demo.c:21:1: error: initializer element is not constant
make: *** [obj/local/armeabi/objs/ndk_demo/ndk_demo.o] Error 1
那我哪里错了.请帮帮我.
谢谢
then where am i wrong.Please help me.
Thanks
推荐答案
ndk-build 编译 缩略图 : ndk_demo . c:21:1: 错误: 初始化程序 元素 是 不是 常量 制作: *** [obj/local/armeabi/objs/ndk_demo/ndk_demo.o] 错误 1
ndk-build Compile thumb : ndk_demo <= ndk_demo.c jni/ndk_demo.c:21:1: error: initializer element is not constant make: *** [obj/local/armeabi/objs/ndk_demo/ndk_demo.o] Error 1
那我哪里错了.请帮帮我.
谢谢
then where am i wrong.Please help me.
Thanks
您应该放置以下行:
You should place the line:
long status = JNI_CreateJavaVM(&m_vm,(void **)&env, &vm_args);
在函数内部.
例如
inside a function.
E.g.
JavaVM *m_vm;
JNIEnv* env;
jobject obj;
JavaVMInitArgs vm_args;
long status;
void init()
{
status = JNI_CreateJavaVM(&m_vm,(void **)&env, &vm_args);
// other initialization stuff
}
这篇关于C代码在android ndk中给出错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文