我已经按照教程在测试项目中实现NDK功能。创建了jni文件夹并添加了.mk和.c文件。 NDK已链接,C ++生成文件已链接到NDK文件夹中的ndk-build文件。
在构建项目时,我收到此错误: -
构建项目HomeTestingNDK的默认配置**
/ home / falooka / adt-bundle-linux-x86-20130917 / ndk / ndk-build all 编译拇指:HomeTestingNDK< = native.c
make:/home/falooka/adt-bundle-linux-x86-20130917/ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc:命令不是结果
make: * [obj / local / armeabi / objs / HomeTestingNDK / native.o]错误127
构建完成**
现在的问题是'make'是针对arm-linux-androideabi-gcc而文件夹中不存在这个文件,而是arm-linux-androideabi-gcc-4.6。现在,谷歌搜索了一段时间后,我对如何解决这个问题感到非常震惊。
提前致谢。
答案 0 :(得分:1)
我可以通过以下几个步骤来解决我的问题:
1)由于一些愚蠢的原因,ndk目录中缺少arm-linux-androideabi-gcc。所以我尝试重新安装zip并将其解压缩到主文件夹而不是我的驱动器,以避免所有权错误。现在文件就在那里,这个错误消失了!
2)然后我得到“Android NDK java.lang.UnsatisfiedLinkError:findLibrary return null”错误,这与库缺失有关。在阅读了一些帖子后,突出的是项目目录中的libs /文件夹应该有.so文件,而不是那里。我正在使用OpenCv与我的项目,所以我更新了环境链接,并在'make'中放置了ndk-build文件的显式路径,以确保它找到ndk-build。
3)我也这样做了:https://stackoverflow.com/a/7646921/1016544
所以最后它的编译和显示.so文件的构建在安装和运行之前完美。