Skip to content

webrtc: fix build with older libnice versions

Tim-Philipp Müller requested to merge tpm/gstreamer:fix-nice-check into main
  1. check for right macro name when checking for NICE_VERSION_CHECK

  2. if libnice version is 0.1.18.1 this should not satisfy a NICE_VERSION_CHECK(0,1,19).

Fixes build with libnice 0.1.18.1 subproject checkout.

Build failure (click to expand): ``` [14/1008] Compiling C object subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/gstwebrtcice.c.o ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcice.c: In function ‘_get_server_url’: ../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcice.c:893:7: warning: implicit declaration of function ‘nice_candidate_relay_address’; did you mean ‘get_candidate_address’? [-Wimplicit-function-declaration] 893 | nice_candidate_relay_address (cand, &addr); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | get_candidate_address [19/19] Linking target subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so FAILED: subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so cc -o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/gstwebrtc.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/gstwebrtcice.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/gstwebrtcstats.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/icestream.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/nicetransport.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/webrtcsctptransport.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/gstwebrtcbin.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/transportreceivebin.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/transportsendbin.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/transportstream.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/utils.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/webrtcsdp.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/webrtctransceiver.c.o subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/webrtcdatachannel.c.o -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libgstwebrtc.so -Wl,-Bsymbolic-functions '-Wl,-rpath,ORIGIN/../../../gstreamer/libs/gst/base:ORIGIN/../../../gstreamer/gst:ORIGIN/../../../gst-plugins-base/gst-libs/gst/sdp:ORIGIN/../../../gst-plugins-base/gst-libs/gst/rtp:ORIGIN/../../../gst-plugins-base/gst-libs/gst/audio:ORIGIN/../../../gst-plugins-base/gst-libs/gst/tag:ORIGIN/../../../orc/orc:ORIGIN/../../../gst-plugins-base/gst-libs/gst/pbutils:ORIGIN/../../../gst-plugins-base/gst-libs/gst/video:ORIGIN/../../../gst-plugins-base/gst-libs/gst/app:ORIGIN/../../gst-libs/gst/webrtc:ORIGIN/../../gst-libs/gst/sctp:$ORIGIN/../../../libnice/nice' -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gstreamer/libs/gst/base -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gstreamer/gst -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/sdp -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/rtp -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/audio -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/tag -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/orc/orc -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/pbutils -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/video -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-base/gst-libs/gst/app -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-bad/gst-libs/gst/webrtc -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/gst-plugins-bad/gst-libs/gst/sctp -Wl,-rpath-link,/home/tpm/Devel/gstreamer/b/subprojects/libnice/nice subprojects/gstreamer/libs/gst/base/libgstbase-1.0.so.0.2100.0 subprojects/gstreamer/gst/libgstreamer-1.0.so.0.2100.0 subprojects/gst-plugins-base/gst-libs/gst/sdp/libgstsdp-1.0.so.0.2100.0 subprojects/gst-plugins-base/gst-libs/gst/rtp/libgstrtp-1.0.so.0.2100.0 subprojects/gst-plugins-base/gst-libs/gst/audio/libgstaudio-1.0.so.0.2100.0 subprojects/gst-plugins-base/gst-libs/gst/tag/libgsttag-1.0.so.0.2100.0 subprojects/orc/orc/liborc-0.4.so.0.32.0 subprojects/gst-plugins-base/gst-libs/gst/pbutils/libgstpbutils-1.0.so.0.2100.0 subprojects/gst-plugins-base/gst-libs/gst/video/libgstvideo-1.0.so.0.2100.0 subprojects/gst-plugins-base/gst-libs/gst/app/libgstapp-1.0.so.0.2100.0 subprojects/gst-plugins-bad/gst-libs/gst/webrtc/libgstwebrtc-1.0.so.0.2100.0 subprojects/gst-plugins-bad/gst-libs/gst/sctp/libgstsctp-1.0.so.0.2100.0 subprojects/libnice/nice/libnice.so.10.11.0 /usr/lib/x86_64-linux-gnu/libglib-2.0.so /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so -pthread -lm /usr/lib/x86_64-linux-gnu/libz.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libgthread-2.0.so /usr/lib/x86_64-linux-gnu/libgnutls.so /usr/lib/x86_64-linux-gnu/libgupnp-igd-1.0.so -Wl,--end-group /usr/bin/ld: subprojects/gst-plugins-bad/ext/webrtc/libgstwebrtc.so.p/gstwebrtcice.c.o: in function `_get_server_url': /home/tpm/Devel/gstreamer/b/../subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcice.c:893: undefined reference to `nice_candidate_relay_address' collect2: error: ld returned 1 exit status ```
Edited by Tim-Philipp Müller

Merge request reports