libmediasoupclient icon indicating copy to clipboard operation
libmediasoupclient copied to clipboard

[WIP] Update deps libsdptransform and Catch2

Open ibc opened this issue 3 years ago • 7 comments

Fixes #140

  • Update libsdptransform to v1.2.10
  • Update Catch2 to v3.2.1

ibc avatar Dec 22 '22 15:12 ibc

I don't know what can cause that error...

I've tested the branch and it does not compile. this change is needed:

--- a/test/src/tests.cpp
+++ b/test/src/tests.cpp
@@ -17,8 +17,8 @@ int main(int argc, char* argv[])
        // Build a new parser on top of Catch.
        // clang-format off
        auto cli = session.cli()
-         | Catch::clara::Opt(logLevelStr, "debug|warn|error|none")["-L"]["--log-level"]("libmediasoupclient log level (default: none)")
-         | Catch::clara::Opt(webrtcLogLevelStr, "verbose|info|warn|error|none")["-W"]["--webrtc-log-level"]("libwebrtc log level (default: none)");
+         | Catch::Clara::Opt(logLevelStr, "debug|warn|error|none")["-L"]["--log-level"]("libmediasoupclient log level (default: none)")
+         | Catch::Clara::Opt(webrtcLogLevelStr, "verbose|info|warn|error|none")["-W"]["--webrtc-log-level"]("libwebrtc log level (default: none)");

Then it compiles, but few test fail and there is a segfault:

Screenshot 2022-12-22 at 16 59 10

I can look at it but probably not before the end of the year.

jmillan avatar Dec 22 '22 16:12 jmillan

@jmillan are you using this line?

gn gen out/m94 --args='is_debug=false is_component_build=false is_clang=true rtc_include_tests=false rtc_use_h264=true use_rtti=true mac_deployment_target="10.11" use_custom_libcxx=false'

ibc avatar Dec 25 '22 20:12 ibc

yes, the very same from our docs.

jmillan avatar Dec 25 '22 20:12 jmillan

So now I have a different problem running ninja -C out/m94:

ibc at ibc-macbook-pro in ~/src/3rdparty/webrtc-checkout/src on m94△

$ ninja -C out/m94

depot_tools/ninja.py: Fallback to a deprecated legacy ninja binary. Note that this ninja binary will be removed soon.
Please install ninja to your project using DEPS. If your project does not have DEPS, Please install ninja in your PATH.
See also https://crbug.com/1340825

ninja: Entering directory `out/m94'
[746/3727] OBJC obj/examples/socketrocket/SRWebSocket.o
FAILED: obj/examples/socketrocket/SRWebSocket.o
../../third_party/llvm-build/Release+Asserts/bin/clang -MMD -MF obj/examples/socketrocket/SRWebSocket.o.d -D_LIBCPP_HAS_NO_ALIGNED_ALLOCATION -DCR_XCODE_VERSION=1420 -DCR_CLANG_REVISION=\"llvmorg-14-init-1002-gb5e470aa-1\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DWEBRTC_ENABLE_PROTOBUF=1 -DWEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE -DRTC_ENABLE_VP9 -DWEBRTC_HAVE_SCTP -DWEBRTC_USE_H264 -DWEBRTC_LIBRARY_IMPL -DWEBRTC_ENABLE_AVX2 -DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0 -DWEBRTC_POSIX -DWEBRTC_MAC -DABSL_ALLOCATOR_NOTHROW=1 -DABSL_FLAGS_STRIP_NAMES=0 -I../.. -Igen -I../../third_party/abseil-cpp -I../../examples/objc/AppRTCMobile/third_party/SocketRocket  -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing -fstack-protector -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -ffp-contract=off -arch x86_64 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -Wall -Werror -Wextra -Wimplicit-fallthrough -Wunreachable-code -Wthread-safety -Wextra-semi -Wunguarded-availability -Wno-missing-field-initializers -Wno-unused-parameter -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-psabi -Wno-ignored-pragma-optimize -Wno-builtin-assume-aligned-alignment -Wno-deprecated-copy -Wno-unused-but-set-parameter -Wno-unused-but-set-variable -Wno-inline-asm -O2 -fno-omit-frame-pointer -gdwarf-4 -g2 -Xclang -debug-info-kind=limited -isysroot ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk -mmacosx-version-min=10.11 -ftrivial-auto-var-init=pattern -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wc++11-narrowing -Wundef -Wunused-lambda-capture -Wno-deprecated-declarations -Wno-nonnull -Wno-semicolon-before-method-body -Wno-unused-variable -std=c11 -Wobjc-missing-property-synthesis -Wstrict-prototypes -fobjc-arc -Wno-objc-missing-property-synthesis -c ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m -o obj/examples/socketrocket/SRWebSocket.o
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m:18:
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.h:17:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:371:81: error: function does not return string type
- (nullable instancetype)initWithUTF8String:(const char *)nullTerminatedCString NS_FORMAT_ARGUMENT(1);
                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^                  ~
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:103:48: note: expanded from macro 'NS_FORMAT_ARGUMENT'
        #define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
                                                      ^          ~
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m:18:
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.h:17:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:372:52: error: function does not return NSString
- (instancetype)initWithString:(NSString *)aString NS_FORMAT_ARGUMENT(1);
                                ~~~~~~~~~~~~~~~~~~ ^                  ~
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:103:48: note: expanded from macro 'NS_FORMAT_ARGUMENT'
        #define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
                                                      ^          ~
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m:18:
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.h:17:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:387:53: error: function does not return NSString
+ (instancetype)stringWithString:(NSString *)string NS_FORMAT_ARGUMENT(1);
                                  ~~~~~~~~~~~~~~~~~ ^                  ~
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:103:48: note: expanded from macro 'NS_FORMAT_ARGUMENT'
        #define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
                                                      ^          ~
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m:18:
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.h:17:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:389:83: error: function does not return string type
+ (nullable instancetype)stringWithUTF8String:(const char *)nullTerminatedCString NS_FORMAT_ARGUMENT(1);
                                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^                  ~
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:103:48: note: expanded from macro 'NS_FORMAT_ARGUMENT'
        #define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
                                                      ^          ~
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m:18:
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.h:17:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:395:114: error: function does not return string type
- (nullable instancetype)initWithCString:(const char *)nullTerminatedCString encoding:(NSStringEncoding)encoding NS_FORMAT_ARGUMENT(1);
                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                     ^                  ~
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:103:48: note: expanded from macro 'NS_FORMAT_ARGUMENT'
        #define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
                                                      ^          ~
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.m:18:
In file included from ../../examples/objc/AppRTCMobile/third_party/SocketRocket/SRWebSocket.h:17:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from ../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:396:97: error: function does not return string type
+ (nullable instancetype)stringWithCString:(const char *)cString encoding:(NSStringEncoding)enc NS_FORMAT_ARGUMENT(1);
                                                  ~~~~~~~~~~~~~~                                ^                  ~
../../../../../../../../Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:103:48: note: expanded from macro 'NS_FORMAT_ARGUMENT'
        #define NS_FORMAT_ARGUMENT(A) __attribute__ ((format_arg(A)))
                                                      ^          ~
6 errors generated.
[763/3727] CXX obj/third_party/protobuf/protoc_lib/cpp_message.o
ninja: build stopped: subcommand failed.

Yes, it says:

depot_tools/ninja.py: Fallback to a deprecated legacy ninja binary. Note that this ninja binary will be removed soon. Please install ninja to your project using DEPS. If your project does not have DEPS, Please install ninja in your PATH. See also https://crbug.com/1340825

It would be great to know what "install ninja to your project using DEPS" means...

ibc avatar Dec 26 '22 00:12 ibc

I've installed ninja 1.11.1 using brew and same problem. Ok.

ibc avatar Dec 26 '22 00:12 ibc

Not sure if relevant, but I have this:

ibc in /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
$ ll
total 0
drwxr-xr-x  7 root  wheel   224B Dec 18 21:27 MacOSX.sdk/
lrwxr-xr-x  1 root  wheel    10B Dec 18 21:26 MacOSX13.1.sdk@ -> MacOSX.sdk
lrwxr-xr-x  1 root  wheel    10B Nov 21 10:45 MacOSX13.sdk@ -> MacOSX.sdk

Xcode doesn't seem to allow installing any other macosx SDK, so I assume this is the right one.

ibc avatar Dec 26 '22 11:12 ibc

My info:

  • macOS Monterey 12.5 (21G72) Intel 2019
  • /usr/bin/clang --version: Apple clang version 14.0.0 (clang-1400.0.29.202)

ibc avatar Dec 26 '22 11:12 ibc

I'm closing this Draft. libsdptransform is up to date since a long time. We'll need to update catch, and also rework the unit tests.

jmillan avatar Nov 14 '25 12:11 jmillan