open-webrtc-toolkit/owt-sdk-quic

compile web_transport failed

baozh opened this issue · 1 comments

baozh commented

I read this article, follow the article step by step, check the latest main branch, but compile failed.

ninja -C out/release owt_web_transport owt_web_transport_tests
ninja: Entering directory `out/release'
[3414/3759] CXX obj/owt/web_transport/owt_web_transport_impl/web_transport_stream_impl.o
FAILED: obj/owt/web_transport/owt_web_transport_impl/web_transport_stream_impl.o
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/owt/web_transport/owt_web_transport_impl/web_transport_stream_impl.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DUSE_X11=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION=\"llvmorg-12-init-5627-gf086e85e-2\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_ABI_UNSTABLE -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_ENABLE_NODISCARD -D_LIBCPP_DEBUG=0 -DCR_LIBCXX_REVISION=375504 -DCR_SYSROOT_HASH=5f64b417e1018dcf8fcc81dc2714e0f264b9b911 -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DOWT_QUIC_LIBRARY_IMPL -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_40 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_40 -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -I../.. -Igen -I../../owt/web_transport/sdk -I../../owt/web_transport/sdk/api -I../../third_party/perfetto/include -Igen/third_party/perfetto/build_config -Igen/third_party/perfetto -I../../third_party/abseil-cpp -I../../third_party/boringssl/src/include -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -mllvm -enable-dse-memoryssa=false -fcomplete-member-pointers -m64 -march=x86-64 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -Xclang -fdebug-compilation-dir -Xclang . -no-canonical-prefixes -Wall -Werror -Wextra -Wimplicit-fallthrough -Wunreachable-code -Wthread-safety -Wextra-semi -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-unneeded-internal-declaration -Wno-undefined-var-template -Wno-psabi -Wno-ignored-pragma-optimize -Wno-implicit-int-float-conversion -Wno-final-dtor-non-final-class -Wno-builtin-assume-aligned-alignment -Wno-deprecated-copy -Wno-non-c-typedef-for-linkage -Wmax-tokens -O0 -fno-omit-frame-pointer -g1 -ftrivial-auto-var-init=pattern -fvisibility=hidden -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/glib-2.0 -isystem../../build/linux/debian_sid_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -Wno-shorten-64-to-32 -Wno-header-guard -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/nss -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/nspr -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=c++14 -fno-trigraphs -Wno-trigraphs -fno-exceptions -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_sid_amd64-sysroot -fvisibility-inlines-hidden -c ../../owt/web_transport/sdk/impl/web_transport_stream_impl.cc -o obj/owt/web_transport/owt_web_transport_impl/web_transport_stream_impl.o
In file included from ../../owt/web_transport/sdk/impl/web_transport_stream_impl.cc:15:
In file included from ../../owt/web_transport/sdk/impl/web_transport_stream_impl.h:21:
../../owt/web_transport/sdk/impl/http3_server_stream.h:50:9: error: no type named 'Http2HeaderBlock' in namespace 'spdy'; did you mean 'SpdyHeaderBlock'?
  spdy::Http2HeaderBlock request_headers_;
  ~~~~~~^~~~~~~~~~~~~~~~
        SpdyHeaderBlock
../../net/third_party/quiche/src/spdy/core/spdy_header_block.h:49:29: note: 'SpdyHeaderBlock' declared here
class QUICHE_EXPORT_PRIVATE SpdyHeaderBlock {
                            ^
In file included from ../../owt/web_transport/sdk/impl/web_transport_stream_impl.cc:15:
../../owt/web_transport/sdk/impl/web_transport_stream_impl.h:23:10: fatal error: 'net/third_party/quiche/src/quic/core/web_transport_interface.h' file not found
#include "net/third_party/quiche/src/quic/core/web_transport_interface.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
[3415/3759] CXX obj/owt/web_transport/owt_web_transport_impl/web_transport_server_backend.o
FAILED: obj/owt/web_transport/owt_web_transport_impl/web_transport_server_backend.o
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/owt/web_transport/owt_web_transport_impl/web_transport_server_backend.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DUSE_X11=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION=\"llvmorg-12-init-5627-gf086e85e-2\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_LIBCPP_ABI_UNSTABLE -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS -D_LIBCPP_ENABLE_NODISCARD -D_LIBCPP_DEBUG=0 -DCR_LIBCXX_REVISION=375504 -DCR_SYSROOT_HASH=5f64b417e1018dcf8fcc81dc2714e0f264b9b911 -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DOWT_QUIC_LIBRARY_IMPL -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_40 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_40 -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -I../.. -Igen -I../../owt/web_transport/sdk -I../../owt/web_transport/sdk/api -I../../third_party/perfetto/include -Igen/third_party/perfetto/build_config -Igen/third_party/perfetto -I../../third_party/abseil-cpp -I../../third_party/boringssl/src/include -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/protobuf/src -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pthread -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -mllvm -enable-dse-memoryssa=false -fcomplete-member-pointers -m64 -march=x86-64 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -Xclang -fdebug-compilation-dir -Xclang . -no-canonical-prefixes -Wall -Werror -Wextra -Wimplicit-fallthrough -Wunreachable-code -Wthread-safety -Wextra-semi -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-unneeded-internal-declaration -Wno-undefined-var-template -Wno-psabi -Wno-ignored-pragma-optimize -Wno-implicit-int-float-conversion -Wno-final-dtor-non-final-class -Wno-builtin-assume-aligned-alignment -Wno-deprecated-copy -Wno-non-c-typedef-for-linkage -Wmax-tokens -O0 -fno-omit-frame-pointer -g1 -ftrivial-auto-var-init=pattern -fvisibility=hidden -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/glib-2.0 -isystem../../build/linux/debian_sid_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -Wno-shorten-64-to-32 -Wno-header-guard -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/nss -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/nspr -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=c++14 -fno-trigraphs -Wno-trigraphs -fno-exceptions -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_sid_amd64-sysroot -fvisibility-inlines-hidden -c ../../owt/web_transport/sdk/impl/web_transport_server_backend.cc -o obj/owt/web_transport/owt_web_transport_impl/web_transport_server_backend.o
In file included from ../../owt/web_transport/sdk/impl/web_transport_server_backend.cc:7:
In file included from ../../owt/web_transport/sdk/impl/web_transport_server_backend.h:11:
In file included from ../../owt/web_transport/sdk/impl/web_transport_server_session.h:15:
../../owt/web_transport/sdk/impl/http3_server_session.h:46:38: error: only virtual member functions can be marked 'override'
  bool ShouldNegotiateWebTransport() override;
                                     ^~~~~~~~
../../owt/web_transport/sdk/impl/http3_server_session.h:47:39: error: only virtual member functions can be marked 'override'
  bool ShouldNegotiateHttp3Datagram() override;
                                      ^~~~~~~~
In file included from ../../owt/web_transport/sdk/impl/web_transport_server_backend.cc:7:
In file included from ../../owt/web_transport/sdk/impl/web_transport_server_backend.h:11:
../../owt/web_transport/sdk/impl/web_transport_server_session.h:16:10: fatal error: 'net/third_party/quiche/src/quic/core/http/web_transport_http3.h' file not found

Please check gclient sync successfully pulled all dependencies.