GRAYKEY / mobilefacenet_android

simple android demo.mobilefacenet.ncnn
117 stars 53 forks source link

为什么我的无法编译呢? #18

Open Showdom opened 5 years ago

Showdom commented 5 years ago

首先我的工具提示我升级 classpath 'com.android.tools.build:gradle:3.4.0' 然后recognize.cpp和detect.cpp就找不到sqrt和round函数 然后我加了#include 之后就报以下错误,有没有办法解决呢?:

Build command failed. Error while executing process D:\Android\Sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {--build E:\Project\Code\Example\Android\mobilefacenet_android\app.externalNativeBuild\cmake\debug\armeabi-v7a --target Face} [1/3] Building CXX object CMakeFiles/Face.dir/src/main/cpp/detect.cpp.o [2/3] Building CXX object CMakeFiles/Face.dir/src/main/cpp/recognize.cpp.o [3/3] Linking CXX shared library ........\build\intermediates\cmake\debug\obj\armeabi-v7a\libFace.so FAILED: cmd.exe /C "cd . && D:\Android\Sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=armv7-none-linux-androideabi16 --gcc-toolchain=D:/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=D:/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/sysroot -fPIC -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -march=armv7-a -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fopenmp -O2 -fvisibility=hidden -fvisibility-inlines-hidden -fomit-frame-pointer -fstrict-aliasing -ffunction-sections -fdata-sections -ffast-math -std=c++11 -frtti -fexceptions -O0 -fno-limit-debug-info -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -static-libstdc++ -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--exclude-libs,libunwind.a -Wl,--no-undefined -Qunused-arguments -Wl,-z,noexecstack -shared -Wl,-soname,libFace.so -o ........\build\intermediates\cmake\debug\obj\armeabi-v7a\libFace.so CMakeFiles/Face.dir/src/main/cpp/detect.cpp.o CMakeFiles/Face.dir/src/main/cpp/face_jni.cpp.o CMakeFiles/Face.dir/src/main/cpp/recognize.cpp.o ../../../../src/main/jniLibs/armeabi-v7a/libncnn.a -ljnigraphics -lz -llog -latomic -lm && cd ." ../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::clear(): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::clear(): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::find_blob_index_by_name(char const) const: error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::find_layer_index_by_name(char const) const: error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Extractor::input(char const, ncnn::Mat const&): error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::layer_registry_entry, std::allocator >::_M_fill_insert(gnu_cxx::__normal_iterator<ncnn::layer_registry_entry*, std::vector<ncnn::layer_registry_entry, std::allocator > >, unsigned int, ncnn::layer_registry_entry const&): error: undefined reference to 'std::throw_length_error(char const*)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Layer, std::allocator<ncnn::Layer> >::_M_fill_insert(gnu_cxx::__normal_iterator<ncnn::Layer*, std::vector<ncnn::Layer, std::allocator<ncnn::Layer> > >, unsigned int, ncnn::Layer const&): error: undefined reference to 'std::throw_length_error(char const*)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocator >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocator > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocator >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocator > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocator >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocator > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocator >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocator > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocator >::_M_fill_insert(gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocator > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::throw_length_error(char const*)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<int, std::allocator >::_M_fill_insert(gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator > >, unsigned int, int const&): error: undefined reference to 'std::throw_length_error(char const*)'

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

ninja: build stopped: subcommand failed.

waitinghu commented 5 years ago

我也遇到同样的问题?你解决了吗?

zhixinw commented 5 years ago

libncnn.a 有本地路径关联,作者可以重新编一个相对路径的分享一下吗?还是直接从ncnn git上直接编一个可以用吗?

zhixinw commented 5 years ago

直接从这里下一个编译好的 https://github.com/Tencent/ncnn/releases

sdukaka commented 5 years ago

直接从这里下一个编译好的 https://github.com/Tencent/ncnn/releases

我下载了编译好的包,还是报同样的错误

bluekey2020 commented 5 years ago

这个是我们自己编译配置,你看看,希望能帮到你

在 2019-11-26 23:07:46,"Wei Wu" notifications@github.com 写道:

直接从这里下一个编译好的 https://github.com/Tencent/ncnn/releases

我下载了编译好的包,还是报同样的错误

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

h3clikejava commented 4 years ago

我也遇到同样的问题?你解决了吗?

zlszhonglongshen commented 4 years ago

这个是我们自己编译配置,你看看,希望能帮到你 在 2019-11-26 23:07:46,"Wei Wu" notifications@github.com 写道: 直接从这里下一个编译好的 https://github.com/Tencent/ncnn/releases 我下载了编译好的包,还是报同样的错误 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

看不到你编译的结果哦

zlszhonglongshen commented 4 years ago

首先我的工具提示我升级 classpath 'com.android.tools.build:gradle:3.4.0' 然后recognize.cpp和detect.cpp就找不到sqrt和round函数 然后我加了#include 之后就报以下错误,有没有办法解决呢?:

Build command failed. Error while executing process D:\Android\Sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {--build E:\Project\Code\Example\Android\mobilefacenet_android\app.externalNativeBuild\cmake\debug\armeabi-v7a --target Face} [1/3] Building CXX object CMakeFiles/Face.dir/src/main/cpp/detect.cpp.o [2/3] Building CXX object CMakeFiles/Face.dir/src/main/cpp/recognize.cpp.o [3/3] Linking CXX shared library ........\build\intermediates\cmake\debug\obj\armeabi-v7a\libFace.so FAILED: cmd.exe /C "cd . && D:\Android\Sdk\ndk-bundle\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=armv7-none-linux-androideabi16 --gcc-toolchain=D:/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=D:/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/windows-x86_64/sysroot -fPIC -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -march=armv7-a -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fopenmp -O2 -fvisibility=hidden -fvisibility-inlines-hidden -fomit-frame-pointer -fstrict-aliasing -ffunction-sections -fdata-sections -ffast-math -std=c++11 -frtti -fexceptions -O0 -fno-limit-debug-info -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -static-libstdc++ -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--exclude-libs,libunwind.a -Wl,--no-undefined -Qunused-arguments -Wl,-z,noexecstack -shared -Wl,-soname,libFace.so -o ........\build\intermediates\cmake\debug\obj\armeabi-v7a\libFace.so CMakeFiles/Face.dir/src/main/cpp/detect.cpp.o CMakeFiles/Face.dir/src/main/cpp/face_jni.cpp.o CMakeFiles/Face.dir/src/main/cpp/recognize.cpp.o ../../../../src/main/jniLibs/armeabi-v7a/libncnn.a -ljnigraphics -lz -llog -latomic -lm && cd ." ../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::~Net(): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::clear(): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::clear(): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::_Rep::_M_destroy(std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::assign(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::load_param(__sFILE*): error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::find_blob_index_by_name(char const) const: error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Net::find_layer_index_by_name(char const) const: error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function ncnn::Extractor::input(char const, ncnn::Mat const&): error: undefined reference to 'std::string::compare(char const) const'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::layer_registry_entry, std::allocatorncnn::layer_registry_entry >::_M_fill_insert(gnu_cxx::__normal_iterator<ncnn::layer_registry_entry*, std::vector<ncnn::layer_registry_entry, std::allocatorncnn::layer_registry_entry > >, unsigned int, ncnn::layer_registry_entry const&): error: undefined reference to 'std::throw_length_error(char const*)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Layer, std::allocatorncnn::Layer >::_M_fill_insert(gnu_cxx::__normal_iterator<ncnn::Layer*, std::vector<ncnn::Layer, std::allocatorncnn::Layer > >, unsigned int, ncnn::Layer const&): error: undefined reference to 'std::throw_length_error(char const*)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocatorncnn::Blob >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocatorncnn::Blob > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocatorncnn::Blob >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocatorncnn::Blob > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocatorncnn::Blob >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocatorncnn::Blob > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocatorncnn::Blob >::_M_fill_insert(__gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocatorncnn::Blob > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<ncnn::Blob, std::allocatorncnn::Blob >::_M_fill_insert(gnu_cxx::__normal_iterator<ncnn::Blob*, std::vector<ncnn::Blob, std::allocatorncnn::Blob > >, unsigned int, ncnn::Blob const&): error: undefined reference to 'std::throw_length_error(char const*)'

../../../../src/main/jniLibs/armeabi-v7a/libncnn.a(net.cpp.o):D:/ncnn/src/net.cpp:function std::vector<int, std::allocator >::_M_fill_insert(gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator > >, unsigned int, int const&): error: undefined reference to 'std::throw_length_error(char const*)'

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

ninja: build stopped: subcommand failed.

你最后搞成功了吗?

ZivenMan commented 3 years ago

无法编译,提示ncnn中的一些函数无法链接,是因为你用的NDK版本跟ncnn库编译时用的NDK版本不一致,建议r16b的NDK,我试过,跟作者提供的ncnn库匹配。 另外还要注意,如果你是用android 10测试,会存在读取不到模型文件的问题,那是因为Android Q文件存储机制修改成了沙盒模式,操作拍照,或者上传,报错,打日志,获取相片的路径为空,解决办法: 在AndroidManifest.xml 里的application中添加 android:requestLegacyExternalStorage=“true” 临时解决。可以兼容到Android 11。或者targetsdk 降低到29以下。参见:https://blog.csdn.net/yhx956058885/article/details/107359184/