首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Linux中使用android-ndk创建共享库失败?

在Linux中使用android-ndk创建共享库失败?
EN

Stack Overflow用户
提问于 2012-09-20 19:22:05
回答 2查看 1.1K关注 0票数 3

在尝试使用android-ndk-r8b创建共享库时,它显示错误

代码语言:javascript
复制
Your APP_BUILD_SCRIPT points to an unknown file /home/myLib/ndk1/jni/Android.mk 
Android NDK Aborting...    .Stop

对于我的应用程序,我简单地创建了一个jni文件夹,其中包含一个ndk1.c文件和Android.mk文件

构建库的步骤:

代码语言:javascript
复制
export ARM_ROOT=/home/myLib/android-ndk-r8b
    export ARM_TOOL=/home/myLib/android-ndk-r8b/toolchains/arm-linux-androideabi-   
4.4.3/prebuilt/linux-x86
    export ARM_LIB=/home/myLib/android-ndk-r8b/platforms/android-8/arch-arm/usr/lib
    export ARM_LIBO=/home/myLib/android-ndk-r8b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/lib/gcc/arm-linux-androideabi/4.4.3
    export ARM_INC=/home/myLib/android-ndk-r8b/platforms/android-8/arch-arm/usr/include
    export ARM_PRE=arm-linux-androideabi
    export NDK=/home/myLib/android-ndk-r8b 
    export PATH=$PATH:/home/myLib/android-ndk-r8b
    export NDK_PROJECT_PATH=/home/myLib/ndk1

请提供您宝贵的建议!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-28 20:06:48

这是一个非常好的教程,为ndk初学者http://marakana.com/forums/android/examples/49.html

在教程中:当您在android-ndk-r8b上构建时,替换步骤

代码语言:javascript
复制
go to  your NDK-HOME and  run  make APP=ndk_demo

执行此操作

代码语言:javascript
复制
go to your android project directory and run ndk-build in terminal

检查清单

1)确保设置了path NDK path

2)确保生成了头文件并移动到jni文件夹

3)你从头文件中复制了适当的函数签名到你的c文件中,这是人们在引用示例时会犯错误的地方,他们盲目地复制函数签名,而使用其他的包名和类名。

代码语言:javascript
复制
JNIEXPORT jint JNICALL Java_com_your_package_class_method(JNIEnv *d, jobject e, jstring f);

4)Make文件存在于jni文件夹中,并且包含正确的c文件名。

5)您正在正确的目录中运行ndk-build,即项目主目录

票数 4
EN

Stack Overflow用户

发布于 2012-09-20 23:08:41

尝试使用"ndk-build"...因此,您可以按照.mk中的说明一步一步地执行构建

ndk-build -B V=1

有关更多详细信息,请使用上面的...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12511580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档