hi, folks! thanks a lot for your contributions here :)
i've just started running into an issue when trying to build Janus master (9389c4a436ffef07ca2687d08e165ef283bef198):
# from my Dockerfile
RUN git clone https://github.com/meetecho/janus-gateway.git \
&& cd janus-gateway \
&& sh autogen.sh \
&& ./configure --prefix=/opt/janus --disable-rabbitmq --disable-mqtt \
&& make \
&& make install \
&& make configs
...
janus-dtls.o: In function `janus_dtls_srtp_incoming_msg':
/janus-gateway/dtls.c:861: undefined reference to `srtp_crypto_policy_set_aes_gcm_256_16_auth'
/janus-gateway/dtls.c:862: undefined reference to `srtp_crypto_policy_set_aes_gcm_256_16_auth'
/janus-gateway/dtls.c:896: undefined reference to `srtp_crypto_policy_set_aes_gcm_256_16_auth'
/janus-gateway/dtls.c:897: undefined reference to `srtp_crypto_policy_set_aes_gcm_256_16_auth'
/janus-gateway/dtls.c:900: undefined reference to `srtp_crypto_policy_set_aes_gcm_128_16_auth'
/janus-gateway/dtls.c:901: undefined reference to `srtp_crypto_policy_set_aes_gcm_128_16_auth'
/janus-gateway/dtls.c:865: undefined reference to `srtp_crypto_policy_set_aes_gcm_128_16_auth'
/janus-gateway/dtls.c:866: undefined reference to `srtp_crypto_policy_set_aes_gcm_128_16_auth'
collect2: error: ld returned 1 exit status
make[2]: *** [janus] Error 1
Makefile:1786: recipe for target 'janus' failed
make[2]: Leaving directory '/janus-gateway'
make[1]: *** [all-recursive] Error 1
Makefile:3073: recipe for target 'all-recursive' failed
make[1]: Leaving directory '/janus-gateway'
make: *** [all] Error 2
Makefile:1385: recipe for target 'all' failed
i didn't have this problem yesterday when i was building yesterday's master. if i check out 40bb6bf95247fd718abe9c565b38a2e01788cc42 (from April 3rd), i can build Janus just fine. given these two things, i wonder if a recent change is causing this bug.
the diff in this commit from 10 hours ago includes references to srtp_crypto_policy_set_aes_gcm_256_16_auth, which looks suspicious :)
happy to share the Dockerfile i'm using or anything else if it'd be helpful!
Your libsrtp(2) version was probably built without --enable-openssl or --enable-nss, as explained here https://github.com/meetecho/janus-gateway/issues/2024#issuecomment-609965933
I am having the same issue, and my libsrtp2 was built with --enable-openssl.
Maybe you have more than one libsrtp installed and Janus is picking the wrong one. That said, closing as I already put the recommendation in the README.
Just added a --disable-aes-gcm configure flag in case --enable-openssl doesn't help for some reason. Added to FAQ too: https://janus.conf.meetecho.com/docs/FAQ#aesgcm
Just added a
--disable-aes-gcmconfigure flag in case--enable-openssldoesn't help for some reason. Added to FAQ too: https://janus.conf.meetecho.com/docs/FAQ#aesgcm
It's help for me to build code on Raspberry Pi 4. Thanks
Most helpful comment
Just added a
--disable-aes-gcmconfigure flag in case--enable-openssldoesn't help for some reason. Added to FAQ too: https://janus.conf.meetecho.com/docs/FAQ#aesgcm