Hello everyone, I'm currently trying to build the library using the provided conanfile.py and I am encountering several compilation errors.
I first wanted to build the project on Ubuntu 22.04 but it raises an error on the supported distros when running the install-sysroot.py --arch=i386
ERROR: The only supported distros are
Ubuntu 14.04 LTS (trusty with EoL April 2022)
Ubuntu 16.04 LTS (xenial with EoL April 2024)
Ubuntu 18.04 LTS (bionic with EoL April 2028)
Ubuntu 20.04 LTS (focal with Eol April 2030)
Ubuntu 20.10 (groovy)
Debian 10 (buster) or later
I defaulted back to ubuntu 20.04 with a clean environment, I execute conan create . on the release branch m114_release as per the readme instructions I encounter the following errors:
ninja: Entering directory `out'
[153/5245] CXX obj/api/rtp_sender_interface/rtp_sender_interface.o
FAILED: obj/api/rtp_sender_interface/rtp_sender_interface.o
../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/api/rtp_sender_interface/rtp_sender_interface.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_OZONE=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION=\"llvmorg-17-init-8029-g27f27d15-3\" -DCR_SYSROOT_KEY=20230329T085712Z-1 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DWEBRTC_ENABLE_PROTOBUF=1 -DWEBRTC_STRICT_FIELD_TRIALS=0 -DWEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE -DRTC_ENABLE_VP9 -DRTC_DAV1D_IN_INTERNAL_DECODER_FACTORY -DWEBRTC_HAVE_SCTP -DWEBRTC_USE_H264 -DWEBRTC_LIBRARY_IMPL -DWEBRTC_ENABLE_AVX2 -DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0 -DWEBRTC_POSIX -DWEBRTC_LINUX -DABSL_ALLOCATOR_NOTHROW=1 -DLIBYUV_DISABLE_NEON -I.. -Igen -I../third_party/abseil-cpp -I../third_party/libyuv/include -Wall -Werror -Wextra -Wimplicit-fallthrough -Wextra-semi -Wunreachable-code-aggressive -Wthread-safety -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-ignored-pragma-optimize -Wno-deprecated-builtins -Wno-bitfield-constant-conversion -Wno-deprecated-this-capture -Wshadow -fno-delete-null-pointer-checks -fno-ident -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 -ffp-contract=off -m64 -msse3 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -ftrivial-auto-var-init=pattern -O2 -fdata-sections -ffunction-sections -fno-unique-section-names -fno-omit-frame-pointer -g0 -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -Wglobal-constructors -Wno-shadow -Wctad-maybe-unsupported -Wc++11-narrowing -Wundef -Wunused-lambda-capture -std=c++20 -Wno-trigraphs -gsimple-template-names -fno-exceptions -fno-rtti --sysroot=../build/linux/debian_bullseye_amd64-sysroot -fvisibility-inlines-hidden -Wnon-virtual-dtor -Woverloaded-virtual -c ../api/rtp_sender_interface.cc -o obj/api/rtp_sender_interface/rtp_sender_interface.o
In file included from ../api/rtp_sender_interface.cc:11:
In file included from ../api/rtp_sender_interface.h:25:
In file included from ../api/frame_transformer_interface.h:18:
In file included from ../api/video/encoded_frame.h:19:
In file included from ../modules/video_coding/encoded_frame.h:18:
../modules/video_coding/include/video_codec_interface.h:54:20: error: 'is_pod<webrtc::CodecSpecificInfoVP8>' is deprecated: use is_standard_layout && is_trivial instead [-Werror,-Wdeprecated-declarations]
static_assert(std::is_pod<CodecSpecificInfoVP8>::value, "");
(logs shortened as they are several pages of the same error)
After some digging, it seems C++20 has deprecated std::is_pod in favour of std::is_standard_layout and std::is_trivial. Is there any configuration I might be missing perhaps in the .gclient file ?
Hello everyone, I'm currently trying to build the library using the provided conanfile.py and I am encountering several compilation errors.
I first wanted to build the project on Ubuntu 22.04 but it raises an error on the supported distros when running the
install-sysroot.py --arch=i386
I defaulted back to ubuntu 20.04 with a clean environment, I execute
conan create .
on the release branchm114_release
as per the readme instructions I encounter the following errors:(logs shortened as they are several pages of the same error)
My machine's profile for added info:
Specifying a C++17 compiler with Conan yields the same result via
conan create . -s compiler.cppstd=gnu17
:After some digging, it seems C++20 has deprecated
std::is_pod
in favour ofstd::is_standard_layout
andstd::is_trivial
. Is there any configuration I might be missing perhaps in the.gclient
file ?Thanks in advance !