wenet-e2e / wenet

Production First and Production Ready End-to-End Speech Recognition Toolkit
https://wenet-e2e.github.io/wenet/
Apache License 2.0
4.14k stars 1.07k forks source link

Error Building Android Demo #428

Closed Durgesh92 closed 3 years ago

Durgesh92 commented 3 years ago

Getting below error while running ./gradlew build

Task :app:externalNativeBuildDebug Build multiple targets wenet_arm64-v8a decoder_main_arm64-v8a ninja: Entering directory /media/durgesh/linux-external/iamplus/wenet_android/runtime/device/android/wenet/app/.cxx/cmake/debug/arm64-v8a' [1/10] Building CXX object CMakeFiles/decoder.dir/decoder/ctc_endpoint.cc.o [2/10] Building CXX object CMakeFiles/decoder.dir/decoder/torch_asr_model.cc.o [3/10] Building CXX object CMakeFiles/decoder.dir/decoder/ctc_prefix_beam_search.cc.o [4/10] Building CXX object CMakeFiles/wenet.dir/wenet.cc.o [5/10] Building CXX object CMakeFiles/decoder.dir/decoder/torch_asr_decoder.cc.o [6/10] Building CXX object CMakeFiles/decoder_main.dir/bin/decoder_main.cc.o [7/10] Building CXX object CMakeFiles/decoder.dir/decoder/ctc_wfst_beam_search.cc.o [8/10] Linking CXX static library libdecoder.a [9/10] Linking CXX executable decoder_main FAILED: decoder_main : && /home/durgesh/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ --target=aarch64-none-linux-android21 --gcc-toolchain=/home/durgesh/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/linux-x86_64 --sysroot=/home/durgesh/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/linux-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -std=c++14 -DC10_USE_GLOG -DC10_USE_MINIMAL_GLOG -DANDROID -Wno-c++11-narrowing -fexceptions -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,--no-undefined -Qunused-arguments -Wl,--gc-sections CMakeFiles/decoder_main.dir/bin/decoder_main.cc.o -o decoder_main -L/media/durgesh/linux-external/iamplus/wenet_android/runtime/device/android/wenet/app/.cxx/cmake/debug/arm64-v8a/openfst-build/src/lib/.libs -llog glog-build/libglog.a gflags-build/lib/libgflags.a -lfst libutils.a libfrontend.a libdecoder.a -landroid -lc++_shared kaldi/libkaldi-decoder.a kaldi/libkaldi-lat.a kaldi/libkaldi-util.a kaldi/libkaldi-base.a libutils.a -llog glog-build/libglog.a gflags-build/lib/libgflags.a -lfst /media/durgesh/linux-external/iamplus/wenet_android/runtime/device/android/wenet/app/build/pytorch_android-1.6.0.aar/jni/arm64-v8a/libpytorch_jni.so /media/durgesh/linux-external/iamplus/wenet_android/runtime/device/android/wenet/app/build/pytorch_android-1.6.0.aar/jni/arm64-v8a/libfbjni.so -latomic -lm && : /home/durgesh/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: decoder_main: hidden symbol__sfp_handle_exceptions' in /home/durgesh/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/libgcc_real.a(sfp-exceptions.o) is referenced by DSO /home/durgesh/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/linux-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin/ld: final link failed: Bad value clang++: error: linker command failed with exit code 1 (use -v to see invocation) [10/10] Linking CXX shared library /media/durgesh/linux-external/iamplus/wenet_android/runtime/device/android/wenet/app/build/intermediates/cmake/debug/obj/arm64-v8a/libwenet.so ninja: build stopped: subcommand failed.

Any idea what's causing the issue?

pengzhendong commented 3 years ago

try to remove this option: --exclude-libs,libgcc_real.a -Wl,

Durgesh92 commented 3 years ago

Thanks, I will try this out

Durgesh92 commented 3 years ago

That worked when tried manually. Need to figure out how it's getting added into CMake build.

pengzhendong commented 3 years ago

Try #485