cmd.exe /C “cd . && D:\Software\Android\SDK\ndk\21.4.7075529\toolchains\llvm\prebuilt\windows-x86_64

错误场景:使用NCNN将Yolov7部署到端侧时报错。

1、错误描述

cmd.exe /C "cd . && D:\Software\Android\SDK\ndk\21.4.7075529\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=armv7-none-linux-androideabi24 --gcc-toolchain=D:/Software/Android/SDK/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=D:/Software/Android/SDK/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64/sysroot -fPIC -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -march=armv7-a -mthumb -Wformat -Werror=format-security   -O0 -fno-limit-debug-info  -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libgcc_real.a -Wl,--exclude-libs,libatomic.a -static-libstdc++ -Wl,--build-id -Wl,--fatal-warnings -Wl,--exclude-libs,libunwind.a -Wl,--no-undefined -Qunused-arguments -shared -Wl,-soname,libncnnyolov7.so -o D:\Workfile\ModelDeploy\NCNN\ncnn-android-yolov7-master\app\build\intermediates\cmake\debug\obj\armeabi-v7a\libncnnyolov7.so CMakeFiles/ncnnyolov7.dir/yoloncnn.cpp.o CMakeFiles/ncnnyolov7.dir/yolo.cpp.o CMakeFiles/ncnnyolov7.dir/ndkcamera.cpp.o  D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libncnn.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/opencv-mobile-4.8.1-android/sdk/native/staticlibs/armeabi-v7a/libopencv_core.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/opencv-mobile-4.8.1-android/sdk/native/staticlibs/armeabi-v7a/libopencv_imgproc.a -lcamera2ndk -lmediandk -Wl,-wrap,__kmp_affinity_determine_capable D:/Software/Android/SDK/ndk/21.4.7075529/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/arm-linux-androideabi/24/libvulkan.so D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libglslang.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libSPIRV.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libMachineIndependent.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libOGLCompiler.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libOSDependent.a D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/ncnn-20231027-android-vulkan/armeabi-v7a/lib/libGenericCodeGen.a -landroid -ljnigraphics D:/Workfile/ModelDeploy/NCNN/ncnn-android-yolov7-master/app/src/main/jni/opencv-mobile-4.8.1-android/sdk/native/staticlibs/armeabi-v7a/libopencv_core.a -fopenmp -static-openmp -ldl -lm -llog -latomic -lm && cd ."

clang++: error: linker command failed with exit code 1 (use -v to see invocation)

2、解决方案:更新NDK

NDK版本太低,将NDK从21更新到25,点击26,然后apply,

在这里插入图片描述

记得更新local.properties文件中ndkde路径

在这里插入图片描述

还有一点,26版本下载的时候,toolchains文件夹中只有一个文件llvm,记得从其他版本里把这个五个文件复制过去。

在这里插入图片描述

3、重新点击部署按钮

在这里插入图片描述

至此完结!!!

猜你喜欢

转载自blog.csdn.net/s1_0_2_4/article/details/134938530