Skip to content

[Build] Openvino EP Build Error Linux #21883

Open

Description

Describe the issue

It's building with 1.18.1 but not with 1.19.0, this is the docker image I use to build:

Urgency

Newest version can't be build with openvino.

Target platform

Ubuntu 22.04

Build script

FROM openvino/ubuntu22_runtime:2024.3.0

ENV WORKDIR_PATH=/home/openvino
WORKDIR $WORKDIR_PATH
ENV DEBIAN_FRONTEND noninteractive


ARG ONNXRUNTIME_REPO=https://github.com/microsoft/onnxruntime.git
ARG ONNXRUNTIME_BRANCH=v1.19.0

ENV OpenVINO_DIR=${INTEL_OPENVINO_DIR}/runtime/cmake

USER root
RUN apt update; apt install -y git protobuf-compiler libprotobuf-dev pkg-config ffmpeg libsm6 libxext6 
RUN git clone --recursive -b ${ONNXRUNTIME_BRANCH} ${ONNXRUNTIME_REPO}
RUN /bin/sh onnxruntime/dockerfiles/scripts/install_common_deps.sh
RUN ln -s cmake-* cmake-dir
RUN python3 -m pip install wheel
ENV PATH=${WORKDIR_PATH}/cmake-dir/bin:$PATH
RUN pip3 install onnx
RUN cd onnxruntime && ./build.sh --update --build --config Release --build_shared_lib --parallel --use_openvino AUTO:GPU,CPU --allow_running_as_root --compile_no_warning_as_error

Error / output

it fails with

220.9 [ 43%] Building CXX object CMakeFiles/onnxruntime_graph.dir/home/openvino/onnxruntime/onnxruntime/core/graph/contrib_ops/onnx_function_util.cc.o
221.6 [ 43%] Building CXX object _deps/onnx-build/CMakeFiles/onnx.dir/onnx/defs/generator/old.cc.o
221.7 /home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.h: In constructor ‘onnxruntime::OpenVINOExecutionProviderInfo::OpenVINOExecutionProviderInfo(const string&, const string&, bool, size_t, const string&, const string&, int, void*, bool, bool, bool, bool, bool, bool)’:
221.7 <command-line>: error: no match for ‘operator=’ (operand types are ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} and ‘const char [13]’)
221.7 In file included from /usr/include/c++/11/string:55,
221.7                  from /usr/include/c++/11/stdexcept:39,
221.7                  from /usr/include/c++/11/system_error:41,
221.7                  from /usr/include/c++/11/bits/fs_fwd.h:35,
221.7                  from /usr/include/c++/11/filesystem:44,
221.7                  from /home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.cc:3:
221.7 /usr/include/c++/11/bits/basic_string.h:799:8: note: candidate: ‘template<class _Tp> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_If_sv<_Tp, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const _Tp&) [with _Tp = _Tp; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
221.7   799 |        operator=(const _Tp& __svt)
221.7       |        ^~~~~~~~
221.7 /usr/include/c++/11/bits/basic_string.h:799:8: note:   template argument deduction/substitution failed:
221.7 In file included from /usr/include/c++/11/bits/move.h:57,
221.7                  from /usr/include/c++/11/bits/exception_ptr.h:43,
221.7                  from /usr/include/c++/11/exception:153,
221.7                  from /usr/include/c++/11/stdexcept:38,
221.7                  from /usr/include/c++/11/system_error:41,
221.7                  from /usr/include/c++/11/bits/fs_fwd.h:35,
221.7                  from /usr/include/c++/11/filesystem:44,
221.7                  from /home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.cc:3:
221.7 /usr/include/c++/11/type_traits: In substitution of ‘template<bool _Cond, class _Tp> using enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = std::__cxx11::basic_string<char>&]’:
221.7 /usr/include/c++/11/bits/basic_string.h:125:8:   required by substitution of ‘template<class _CharT, class _Traits, class _Alloc> template<class _Tp, class _Res> using _If_sv = std::enable_if_t<std::__and_<std::is_convertible<const _Tp&, std::basic_string_view<_CharT, _Traits> >, std::__not_<std::is_convertible<const _Tp*, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>*> >, std::__not_<std::is_convertible<const _Tp&, const _CharT*> > >::value, _Res> [with _Tp = char [13]; _Res = std::__cxx11::basic_string<char>&; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
221.7 /usr/include/c++/11/bits/basic_string.h:799:8:   required by substitution of ‘template<class _Tp> std::__cxx11::basic_string<char>::_If_sv<_Tp, std::__cxx11::basic_string<char>&> std::__cxx11::basic_string<char>::operator=<_Tp>(const _Tp&) [with _Tp = char [13]]’
221.7 /home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.h:145:18:   required from here
221.7 /usr/include/c++/11/type_traits:2579:11: error: no type named ‘type’ in ‘struct std::enable_if<false, std::__cxx11::basic_string<char>&>’
221.7  2579 |     using enable_if_t = typename enable_if<_Cond, _Tp>::type;
221.7       |           ^~~~~~~~~~~
221.7 In file included from /usr/include/c++/11/string:55,
221.7                  from /usr/include/c++/11/stdexcept:39,
221.7                  from /usr/include/c++/11/system_error:41,
221.7                  from /usr/include/c++/11/bits/fs_fwd.h:35,
221.7                  from /usr/include/c++/11/filesystem:44,
221.7                  from /home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.cc:3:
221.7 /usr/include/c++/11/bits/basic_string.h:679:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ (near match)
221.7   679 |       operator=(const basic_string& __str)
221.7       |       ^~~~~~~~
221.7 /usr/include/c++/11/bits/basic_string.h:679:7: note:   passing ‘const string*’ {aka ‘const std::__cxx11::basic_string<char>*’} as ‘this’ argument discards qualifiers
221.7 /usr/include/c++/11/bits/basic_string.h:689:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ (near match)
221.7   689 |       operator=(const _CharT* __s)
221.7       |       ^~~~~~~~
221.7 /usr/include/c++/11/bits/basic_string.h:689:7: note:   passing ‘const string*’ {aka ‘const std::__cxx11::basic_string<char>*’} as ‘this’ argument discards qualifiers
221.7 /usr/include/c++/11/bits/basic_string.h:700:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ (near match)
221.7   700 |       operator=(_CharT __c)
221.7       |       ^~~~~~~~
221.7 /usr/include/c++/11/bits/basic_string.h:700:7: note:   conversion of argument 1 would be ill-formed:
221.7 <command-line>: error: invalid conversion from ‘const char*’ to ‘char’ [-fpermissive]
221.7 In file included from /usr/include/c++/11/string:55,
221.7                  from /usr/include/c++/11/stdexcept:39,
221.7                  from /usr/include/c++/11/system_error:41,
221.7                  from /usr/include/c++/11/bits/fs_fwd.h:35,
221.7                  from /usr/include/c++/11/filesystem:44,
221.7                  from /home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.cc:3:
221.7 /usr/include/c++/11/bits/basic_string.h:717:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’ (near match)
221.7   717 |       operator=(basic_string&& __str)
221.7       |       ^~~~~~~~
221.7 /usr/include/c++/11/bits/basic_string.h:717:7: note:   passing ‘const string*’ {aka ‘const std::__cxx11::basic_string<char>*’} as ‘this’ argument discards qualifiers
221.7 /usr/include/c++/11/bits/basic_string.h:785:7: note: candidate: ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]’
221.7   785 |       operator=(initializer_list<_CharT> __l)
221.7       |       ^~~~~~~~
221.7 /usr/include/c++/11/bits/basic_string.h:785:42: note:   no known conversion for argument 1 from ‘const char [13]’ to ‘std::initializer_list<char>’
221.7   785 |       operator=(initializer_list<_CharT> __l)
221.7       |                 ~~~~~~~~~~~~~~~~~~~~~~~~~^~~
221.7 [ 43%] Linking CXX static library libonnxruntime_common.a
221.8 [ 43%] Building CXX object CMakeFiles/onnxruntime_graph.dir/home/openvino/onnxruntime/onnxruntime/core/graph/contrib_ops/quantization_defs.cc.o
221.9 [ 43%] Built target onnxruntime_common
222.0 [ 43%] Building CXX object CMakeFiles/onnxruntime_test_utils.dir/home/openvino/onnxruntime/onnxruntime/test/util/compare_ortvalue.cc.o
222.6 [ 43%] Building CXX object _deps/onnx-build/CMakeFiles/onnx.dir/onnx/defs/generator/utils.cc.o
224.4 gmake[2]: *** [CMakeFiles/onnxruntime_providers_openvino.dir/build.make:146: CMakeFiles/onnxruntime_providers_openvino.dir/home/openvino/onnxruntime/onnxruntime/core/providers/openvino/openvino_execution_provider.cc.o] Error 1
224.4 gmake[1]: *** [CMakeFiles/Makefile2:2172: CMakeFiles/onnxruntime_providers_openvino.dir/all] Error 2
224.4 gmake[1]: *** Waiting for unfinished jobs....

Visual Studio Version

No response

GCC / Compiler Version

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    buildbuild issues; typically submitted using templateep:OpenVINOissues related to OpenVINO execution providerstaleissues that have not been addressed in a while; categorized by a bot

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions