ZoneMinder is failing to build, only on el9, with the following:
[100%] Linking CXX executable zm_rtsp_server
cd /builddir/build/BUILD/zoneminder-1.36.30/redhat-linux-build/src &&
/usr/bin/cmake -E cmake_link_script CMakeFiles/zm_rtsp_server.dir/link.txt --verbose=1
/usr/bin/g++ -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall
-Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64-v2 -mtune=generic
-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -Wl,-z,relro
-Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld
-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1
CMakeFiles/zm_rtsp_server.dir/zm_rtsp_server.cpp.o -o zm_rtsp_server libzm.a -lrt
/usr/lib64/libz.so /usr/lib64/libjpeg.so /usr/lib64/libssl.so /usr/lib64/libcrypto.so
/usr/lib64/libpthread.a /usr/lib64/libpcre.so /usr/lib64/libmysqlclient.so
/usr/lib64/libavformat.so /usr/lib64/libavcodec.so /usr/lib64/libavdevice.so
/usr/lib64/libavutil.so /usr/lib64/libswscale.so /usr/lib64/libswresample.so -ldl
../dep/libbcrypt/libbcrypt.a ../dep/RtspServer/libRtspServer.a
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_set_ui'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_set'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmp_randinit_mt'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmp_randclear'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_clear'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_init2'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_set_str'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_powm'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_urandomb'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_sizeinbase'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_cmp_ui'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_cmp'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_sub_ui'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmp_randseed_ui'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_set_ui'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_set'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmp_randinit_mt'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmp_randclear'
/usr/bin/ld: /usr/lib64/librtmp.so.1: undefined reference to `__gmpz_clear'
collect2: error: ld returned 1 exit status
The gmp-devel and librtmp packages were pulled in during the build.
I am guessing this has something to do with a recent commit in ffmpeg, disabling rtmp.
However, ZoneMinder builds fine against fedora, which also has an rtmp-less ffmpeg.
Scratching my head on this one... not sure if the problem needs fixing in ffmpeg,
rtmpdump, or zoneminder.
I supposes I could try to add -lgmp flag to the zoneminder build.
Thoughts?
Thanks,
Andy
Show replies by date