Android NDK 编译时出现make (e=2): 系统找不到指定的文

36 篇文章 1 订阅
3 篇文章 0 订阅
今天编译一个so文件时出现如下错误:
C:\Users\xxj\Desktop\test\OpenCamera>ndk-build
[armeabi-v7a] Compile++      : SeetafaceSo <= face_detection.cpp
process_begin: CreateProcess(NULL, D:/eclipse_ADT/ndk/android-ndk-r13b/build//..
/toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/bin/arm-linux-andr
oideabi-g++ -MMD -MP -MF ./obj/local/armeabi-v7a/objs/SeetafaceSo/FaceDetection/
src/face_detection.o.d -fno-exceptions -fno-rtti -Ijni/FaceDetection/include -Ij
ni/FaceIdentification/include -Ijni/FaceAlignment/include -ID:/eclipse_ADT/ndk/a
ndroid-ndk-r13b/build//../sources/cxx-stl/gnu-libstdc++/4.9/include -ID:/eclipse
_ADT/ndk/android-ndk-r13b/build//../sources/cxx-stl/gnu-libstdc++/4.9/libs/armea
bi-v7a/include -ID:/eclipse_ADT/ndk/android-ndk-r13b/build//../sources/cxx-stl/g
nu-libstdc++/4.9/include/backward -Ijni -DANDROID -O3 -fstrict-aliasing -fprefet
ch-loop-arrays -Wa,--noexecstack -Wformat -Werror=format-security -frtti -std=c+
+11 -frtti -fexceptions -isystem D:/eclipse_ADT/ndk/android-ndk-r13b/build//../p
latforms/android-14/arch-arm/usr/include -c jni/FaceDetection/src/face_detection
.cpp -o ./obj/local/armeabi-v7a/objs/SeetafaceSo/FaceDetection/src/face_detectio
n.o, ...) failed.
make (e=2): 系统找不到指定的文件。
make: *** [obj/local/armeabi-v7a/objs/SeetafaceSo/FaceDetection/src/face_detecti
on.o] Error 2


C:\Users\546548855\Desktop\test\OpenCamera>

 

后来发现原来是D:/Work/android-sdk/android-ndk-r10/toolchains/arm-linux-androideabi-4.9 这个目录不存在, 电脑中的ndk-r10所包含的toolchains 中的arm-linux-androideabi 版本最大为arm-linux-androideabi-4.8 没有arm-linux-androideabi-4.9, 所以报出make (e=2): 系统找不到指定的文件这个错误。

 

这个命令之所以用arm-linux-androideabi-4.9 是因为工程中的Application.mk中设置了这个值:

NDK_TOOLCHAIN_VERSION=4.9

把它改为:NDK_TOOLCHAIN_VERSION=4.8就能正常编译了。

 

 

获取更多帮主请关注小程序

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值