Source: mediastreamer2 Version: 1:2.16.1-2 Severity: serious Justification: fails to build from source
Hi,
mediastreamer2 FTBFS since GCC-8 became the default compiler:
[ 38%] Building C object
src/CMakeFiles/mediastreamer_voip-static.dir/voip/audiostream.c.o
cd /build/mediastreamer2-2.16.1/obj-x86_64-linux-gnu/src && /usr/bin/cc
-DBCTBX_STATIC -DBZRTP_STATIC -DHAVE_CONFIG_H -DMS2_EXPORTS -DMS2_FILTERS
-DMS2_INTERNAL -DMS2_STATIC -DORTP_STATIC -DVIDEO_ENABLED -D_TRUE_TIME
-I/build/mediastreamer2-2.16.1/include
-I/build/mediastreamer2-2.16.1/src/audiofilters
-I/build/mediastreamer2-2.16.1/src/utils
-I/build/mediastreamer2-2.16.1/src/voip
-I/build/mediastreamer2-2.16.1/obj-x86_64-linux-gnu
-I/build/mediastreamer2-2.16.1/obj-x86_64-linux-gnu/src -I/usr/include/libxml2
-I/usr/include/x86_64-linux-gnu -g -O2
-fdebug-prefix-map=/build/mediastreamer2-2.16.1=. -fstack-protector-strong
-Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall
-Wuninitialized -Wno-format-truncation -Werror -Wextra -Wno-unused-parameter
-fno-strict-aliasing -Wno-missing-field-initializers
-Wdeclaration-after-statement -Wstrict-prototypes -Wno-error=strict-prototypes
-o CMakeFiles/mediastreamer_voip-static.dir/voip/audiostream.c.o -c
/build/mediastreamer2-2.16.1/src/voip/audiostream.c
/build/mediastreamer2-2.16.1/src/voip/audiostream.c: In function
'audio_stream_start_from_io':
/build/mediastreamer2-2.16.1/src/voip/audiostream.c:816:52: error: cast between
incompatible function types from 'void (*)(RtpSession *, uint32_t, void *)'
{aka 'void (*)(struct _RtpSession *, unsigned int, void *)'} to 'void
(*)(struct _RtpSession *, void *, void *, void *)' [-Werror=cast-function-type]
rtp_session_signal_connect(rtps,"telephone-event",(RtpCallback)on_dtmf_received,stream);
^
/build/mediastreamer2-2.16.1/src/voip/audiostream.c:817:57: error: cast between
incompatible function types from 'bool_t (*)(RtpSession *, void *)' {aka
'unsigned char (*)(struct _RtpSession *, void *)'} to 'void (*)(struct
_RtpSession *, void *, void *, void *)' [-Werror=cast-function-type]
rtp_session_signal_connect(rtps,"payload_type_changed",(RtpCallback)audio_stream_payload_type_changed,stream);
^
/build/mediastreamer2-2.16.1/src/voip/audiostream.c: In function
'audio_stream_stop':
/build/mediastreamer2-2.16.1/src/voip/audiostream.c:1783:94: error: cast
between incompatible function types from 'void (*)(RtpSession *, uint32_t,
void *)' {aka 'void (*)(struct _RtpSession *, unsigned int, void *)'} to 'void
(*)(struct _RtpSession *, void *, void *, void *)' [-Werror=cast-function-type]
rtp_session_signal_disconnect_by_callback(stream->ms.sessions.rtp_session,"telephone-event",(RtpCallback)on_dtmf_received);
^
/build/mediastreamer2-2.16.1/src/voip/audiostream.c:1784:99: error: cast
between incompatible function types from 'bool_t (*)(RtpSession *, void *)'
{aka 'unsigned char (*)(struct _RtpSession *, void *)'} to 'void (*)(struct
_RtpSession *, void *, void *, void *)' [-Werror=cast-function-type]
rtp_session_signal_disconnect_by_callback(stream->ms.sessions.rtp_session,"payload_type_changed",(RtpCallback)audio_stream_payload_type_changed);
^
This seems to be caused by compiling with error and the new compiler
series emitting more diagnostics.
Andreas
mediastreamer2_1%2.16.1-2.log.gz
Description: application/gzip

