Skip to content

[Build] build onnxruntime for android with nnapi and qnn error #26479

@WangHHY19931001

Description

@WangHHY19931001

Describe the issue

build a83fc4d for android arm64 with nnapi and qnn ep error

Urgency

No response

Target platform

android arm64

Build script

.\build.bat --config Release --android --android_sdk_path "C:\Users\dingli\AppData\Local\Android\Sdk" --android_ndk_path "C:\Users\dingli\AppData\Local\Android\Sdk\ndk\27.3.13750724" --android_abi arm64-v8a --android_api 29 --cmake_generator Ninja --use_nnapi --skip_tests --cmake_extra_defines "CMAKE_CXX_FLAGS=-flto -funroll-loops -march=armv8.2-a+fp16" "CMAKE_C_FLAGS=-flto -funroll-loops -march=armv8.2-a+fp16" "CMAKE_INTERPROCEDURAL_OPTIMIZATION=ON" --build_shared_lib --use_qnn static_lib --qnn_home "C:\Qualcomm\AIStack\QAIRT\2.31.0.250130" --parallel

Error / output

Synchronizing submodule url for 'cmake/external/emsdk'
Synchronizing submodule url for 'cmake/external/libprotobuf-mutator'
Synchronizing submodule url for 'cmake/external/onnx'
Synchronizing submodule url for 'cmake/external/onnx/third_party/pybind11'
-- Loading Dependencies URLs ...
-- Loading Dependencies ...
-- Abseil source dir:F:/onnxruntime/build/Windows/Release/_deps/abseil_cpp-src
-- CMAKE_HOST_SYSTEM_NAME: Windows
-- Use prebuilt protoc

-- 3.21.12.0
-- Using the multi-header code from F:/onnxruntime/build/Windows/Release/_deps/nlohmann_json-src/include/
-- Proceeding with version: 23.5.26.0
-- CMAKE_CXX_FLAGS: -flto -funroll-loops -march=armv8.2-a+fp16 -ffunction-sections -fdata-sections -DCPUINFO_SUPPORTED
-- Using custom protoc executable
-- ONNX_PROTOC_EXECUTABLE: F:/onnxruntime/build/Windows/Release/_deps/protoc_binary-src/bin/protoc.exe
-- Protobuf_VERSION:

-- ******** Summary ********
-- CMake version : 3.28.6
-- CMake command : C:/Program Files/CMake/bin/cmake.exe
-- System : Android
-- C++ compiler : C:/Users/dingli/AppData/Local/Android/Sdk/ndk/27.3.13750724/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++.exe
-- C++ compiler version : 18.0.4
-- CXX flags : -flto -funroll-loops -march=armv8.2-a+fp16 -ffunction-sections -fdata-sections -DCPUINFO_SUPPORTED -Wnon-virtual-dtor
-- Build type : Release
-- Compile definitions : EIGEN_MPL2_ONLY
-- CMAKE_PREFIX_PATH :
-- CMAKE_INSTALL_PREFIX : C:/Program Files (x86)/onnxruntime
-- CMAKE_MODULE_PATH : F:/onnxruntime/cmake/external

-- ONNX version : 1.18.0
-- ONNX NAMESPACE : onnx
-- ONNX_USE_LITE_PROTO : ON
-- USE_PROTOBUF_SHARED_LIBS : OFF
-- ONNX_DISABLE_EXCEPTIONS : OFF
-- ONNX_DISABLE_STATIC_REGISTRATION : OFF
-- ONNX_WERROR : OFF
-- ONNX_BUILD_TESTS : OFF
-- BUILD_SHARED_LIBS : OFF

-- Protobuf compiler : F:/onnxruntime/build/Windows/Release/_deps/protoc_binary-src/bin/protoc.exe
-- Protobuf includes :
-- Protobuf libraries :
-- ONNX_BUILD_PYTHON : OFF

-- Configured Eigen 3.4.90

-- Finished fetching external dependencies
-- Extracted QNN SDK version 2.31.0 from C:\Qualcomm\AIStack\QAIRT\2.31.0.250130/sdk.yaml
-- QNN SDK version 2.31.0
-- Configuring done (3.8s)
-- Generating done (0.9s)
-- Build files have been written to: F:/onnxruntime/build/Windows/Release
[0/2] Re-checking globbed directories...
[1/9] Linking CXX shared library libonnxruntime.so
FAILED: libonnxruntime.so
C:\Windows\system32\cmd.exe /C "cd . && C:\Users\dingli\AppData\Local\Android\Sdk\ndk\27.3.13750724\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android29 --sysroot=C:/Users/dingli/AppData/Local/Android/Sdk/ndk/27.3.13750724/toolchains/llvm/prebuilt/windows-x86_64/sysroot -fPIC -flto -funroll-loops -march=armv8.2-a+fp16 -ffunction-sections -fdata-sections -DCPUINFO_SUPPORTED -O3 -DNDEBUG -flto=thin -Wl,--build-id=sha1 -Wl,--no-rosegment -Wl,--no-undefined-version -Wl,--fatal-warnings -Wl,--gc-sections -Qunused-arguments -Wl,--no-undefined -Wl,-z,max-page-size=16384 -s -Xlinker -rpath=$ORIGIN -Xlinker --version-script=F:/onnxruntime/build/Windows/Release/onnxruntime.lds -Xlinker --no-undefined -Xlinker --gc-sections -Xlinker -z -Xlinker noexecstack -shared -Wl,-soname,libonnxruntime.so -o libonnxruntime.so @CMakeFiles\onnxruntime.rsp && cd ."
ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::Node const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::NodeUnit const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, float) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, int) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, unsigned int) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, long) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator>, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator>>> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<int, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<unsigned int, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<long, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<float, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetFloat(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetInt64(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetFloats(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetInt64s(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetString(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::HasAttr(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::Node const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::NodeUnit const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)

defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

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

[2/9] Linking CXX executable onnx_test_runner
FAILED: onnx_test_runner
C:\Windows\system32\cmd.exe /C "cd . && C:\Users\dingli\AppData\Local\Android\Sdk\ndk\27.3.13750724\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android29 --sysroot=C:/Users/dingli/AppData/Local/Android/Sdk/ndk/27.3.13750724/toolchains/llvm/prebuilt/windows-x86_64/sysroot -flto -funroll-loops -march=armv8.2-a+fp16 -ffunction-sections -fdata-sections -DCPUINFO_SUPPORTED -O3 -DNDEBUG -flto=thin -Wl,--build-id=sha1 -Wl,--no-rosegment -Wl,--no-undefined-version -Wl,--fatal-warnings -Wl,--gc-sections -Qunused-arguments -Wl,--no-undefined -Wl,--gc-sections -Wl,-rpath='$ORIGIN' @CMakeFiles\onnx_test_runner.rsp -o onnx_test_runner && cd ."
ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::Node const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::NodeUnit const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, float) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, int) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, unsigned int) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, long) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator>, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator>>> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<int, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<unsigned int, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<long, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<float, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetFloat(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetInt64(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetFloats(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetInt64s(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetString(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::HasAttr(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::Node const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::NodeUnit const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)

defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

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

[3/9] Linking CXX executable onnxruntime_test_all
FAILED: onnxruntime_test_all
C:\Windows\system32\cmd.exe /C "C:\Windows\system32\cmd.exe /C "cd /D F:\onnxruntime\build\Windows\Release && "C:\Program Files\CMake\bin\cmake.exe" -E copy_directory F:/onnxruntime/onnxruntime/test/testdata F:/onnxruntime/build/Windows/Release/testdata && cd /D F:\onnxruntime\build\Windows\Release && "C:\Program Files\CMake\bin\cmake.exe" -E copy_directory F:/onnxruntime/samples F:/onnxruntime/build/Windows/Release/samples && cd F:\onnxruntime\build\Windows\Release" && C:\Users\dingli\AppData\Local\Android\Sdk\ndk\27.3.13750724\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android29 --sysroot=C:/Users/dingli/AppData/Local/Android/Sdk/ndk/27.3.13750724/toolchains/llvm/prebuilt/windows-x86_64/sysroot -flto -funroll-loops -march=armv8.2-a+fp16 -ffunction-sections -fdata-sections -DCPUINFO_SUPPORTED -O3 -DNDEBUG -flto=thin -Wl,--build-id=sha1 -Wl,--no-rosegment -Wl,--no-undefined-version -Wl,--fatal-warnings -Wl,--gc-sections -Qunused-arguments -Wl,--no-undefined -Wl,--gc-sections -Wl,-rpath='$ORIGIN' @CMakeFiles\onnxruntime_test_all.rsp -o onnxruntime_test_all && cd ."
ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::Node const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::NodeUnit const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, float) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, int) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, unsigned int) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, long) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator>, std::__ndk1::allocator<std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator>>> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<int, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<unsigned int, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<long, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::Get(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&, std::__ndk1::vector<float, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetFloat(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetInt64(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetFloats(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetInt64s(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::GetString(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::HasAttr(std::__ndk1::basic_string<char, std::__ndk1::char_traits, std::__ndk1::allocator> const&) const

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::Node const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)
defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

ld.lld: error: duplicate symbol: onnxruntime::NodeAttrHelper::NodeAttrHelper(onnxruntime::NodeUnit const&)

defined in libonnxruntime_providers_nnapi.a(utils.cc.o)

defined in libonnxruntime_providers_qnn.a(ort_api.cc.o)

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

ninja: build stopped: subcommand failed.
Cross-compiling build detected: Defaulting to --update --build. Specify --test explicitly to run tests.
Namespace(build_dir='F:\onnxruntime\\build\Windows', config=['Release'], update=True, build=True, clean=False, parallel=0, target=None, compile_no_warning_as_error=False, build_shared_lib=True, build_apple_framework=False, enable_lto=False, use_cache=False, use_binskim_compliant_compile_flags=False, cmake_extra_defines=[['CMAKE_CXX_FLAGS=-flto -funroll-loops -march=armv8.2-a+fp16', 'CMAKE_C_FLAGS=-flto -funroll-loops -march=armv8.2-a+fp16', 'CMAKE_INTERPROCEDURAL_OPTIMIZATION=ON']], cmake_path='cmake', cmake_generator='Ninja', use_vcpkg=False, use_vcpkg_ms_internal_asset_cache=False, skip_submodule_sync=False, test=False, skip_tests=True, ctest_path='ctest', enable_onnx_tests=False, path_to_protoc_exe=None, fuzz_testing=False, enable_symbolic_shape_infer_tests=False, skip_onnx_tests=False, skip_winml_tests=False, skip_nodejs_tests=False, test_all_timeout='10800', enable_transformers_tool_test=False, build_micro_benchmarks=False, code_coverage=False, enable_training=False, enable_training_apis=False, enable_training_ops=False, enable_nccl=False, nccl_home=None, enable_memory_profile=False, enable_address_sanitizer=False, gen_doc=None, rv64=False, riscv_toolchain_root='', riscv_qemu_path='', android=True, android_abi='arm64-v8a', android_api=29, android_sdk_path='C:\Users\dingli\AppData\Local\Android\Sdk', android_ndk_path='C:\Users\dingli\AppData\Local\Android\Sdk\ndk\27.3.13750724', android_cpp_shared=False, android_run_emulator=False, build_wasm=False, build_wasm_static_lib=False, emsdk_version='4.0.8', enable_wasm_simd=False, enable_wasm_relaxed_simd=False, enable_wasm_threads=False, disable_wasm_exception_catching=False, enable_wasm_api_exception_catching=False, enable_wasm_exception_throwing_override=True, wasm_run_tests_in_browser=False, enable_wasm_profiling=False, enable_wasm_debug_info=False, wasm_malloc=None, emscripten_settings=None, use_full_protobuf=False, use_mimalloc=False, external_graph_transformer_path=None, use_extensions=False, extensions_overridden_path=None, minimal_build=None, include_ops_by_config=None, enable_reduced_operator_type_support=False, disable_contrib_ops=False, disable_ml_ops=False, disable_rtti=False, disable_types=[], disable_exceptions=False, client_package_build=False, enable_pybind=False, build_wheel=False, wheel_name_suffix=None, skip_keras_test=False, build_csharp=False, build_nuget=False, msbuild_extra_options=None, build_java=False, build_nodejs=False, build_objc=False, use_cuda=False, cuda_version=None, cuda_home=None, cudnn_home=None, enable_cuda_line_info=False, enable_cuda_nhwc_ops=False, disable_cuda_nhwc_ops=False, enable_cuda_minimal_build=False, nvcc_threads=-1, enable_nvtx_profile=False, enable_cuda_profiling=False, use_dnnl=False, dnnl_gpu_runtime='', dnnl_opencl_root='', dnnl_aarch64_runtime='', dnnl_acl_root='', use_openvino=None, use_tensorrt=False, use_tensorrt_builtin_parser=True, use_tensorrt_oss_parser=False, tensorrt_home=None, tensorrt_rtx_home=None, use_nv_tensorrt_rtx=False, use_dml=False, dml_path='', dml_external_project=False, use_nnapi=True, nnapi_min_api=None, use_coreml=False, use_qnn='static_lib', qnn_home='C:\Qualcomm\AIStack\QAIRT\2.31.0.250130', use_snpe=False, snpe_root=None, use_vitisai=False, use_armnn=False, armnn_relu=False, armnn_bn=False, armnn_home=None, armnn_libs=None, use_acl=False, acl_home=None, acl_libs=None, no_kleidiai=False, use_rknpu=False, use_cann=False, cann_home=None, use_migraphx=False, migraphx_home=None, use_rocm=False, rocm_version=None, rocm_home=None, use_webnn=False, use_jsep=False, use_webgpu=False, use_external_dawn=False, wgsl_template='static', use_xnnpack=False, use_vsinpu=False, use_azure=False, enable_lazy_tensor=False, ms_experimental=False, enable_msinternal=False, use_lock_free_queue=False, enable_generic_interface=False, msvc_toolset=None, windows_sdk_version=None, enable_msvc_static_runtime=False, use_telemetry=False, caller_framework=None, x86=False, arm=False, arm64=False, arm64ec=False, buildasx=False, disable_memleak_checker=False, enable_pix_capture=False, enable_wcos=False, use_gdk=False, gdk_edition='', gdk_platform='Scarlett', use_winml=False, winml_root_namespace_override=None)

Visual Studio Version

No response

GCC / Compiler Version

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildbuild issues; typically submitted using templateep:QNNissues related to QNN exeution providerplatform:mobileissues related to ONNX Runtime mobile; typically submitted using template

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions