When building linphone with upnp flag the build will fail unless media-libs/mediastreamer-2.9.0 is also built with upnp support. This is not enforced by the ebuild leading to a compile error. Compiling media-libs/mediastreamer-2.9.0 with upnp makes the error go away. Reproducible: Always Steps to Reproduce: 1. enable upnp flag on linphone 2. emerge linphone Actual Results: Compilation failes Expected Results: Compilation succeeds
Same issue here on ~amd64: libtool: link: x86_64-pc-linux-gnu-gcc -Wall -DIN_LINPHONE -D_REENTRANT -DORTP_INET6 -D_REENTRANT -DORTP_INET6 -DOSIP_MT -pthread -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DENABLE_TRACE -DLOG_DOMAIN=\"LinphoneCore\" -DINET6 -DORTP_INET6 -DMSG_STORAGE_ENABLED -DBUILD_WIZARD -march=amdfam10 -mcx16 -msahf -mpopcnt -mabm --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10 -O2 -pipe -Wl,-O1 -o .libs/test_numbers test_numbers.o -Wl,--as-needed ./.libs/liblinphone.so -L/usr/lib64 -lmediastreamer_base -lmediastreamer_voip -lortp -lpthread -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lsqlite3 -ludev /usr/lib64/libeXosip2.so -lrt -lresolv -lcares -lssl -lcrypto /usr/lib64/libosip2.so /usr/lib64/libosipparser2.so -lnsl -pthread ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_connection_status' ./.libs/liblinphone.so: undefined reference to `upnp_igd_refresh' ./.libs/liblinphone.so: undefined reference to `upnp_igd_add_port_mapping' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_device_id' ./.libs/liblinphone.so: undefined reference to `upnp_igd_start' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_external_ipaddress' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_nat_enabled' ./.libs/liblinphone.so: undefined reference to `upnp_igd_delete_port_mapping' ./.libs/liblinphone.so: undefined reference to `upnp_igd_create' ./.libs/liblinphone.so: undefined reference to `upnp_igd_destroy' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_local_ipaddress' collect2: error: ld returned 1 exit status Makefile:666: recipe for target 'test_ecc' failed make[4]: *** [test_ecc] Error 1 make[4]: *** Waiting for unfinished jobs.... ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_connection_status' ./.libs/liblinphone.so: undefined reference to `upnp_igd_refresh' ./.libs/liblinphone.so: undefined reference to `upnp_igd_add_port_mapping' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_device_id' ./.libs/liblinphone.so: undefined reference to `upnp_igd_start' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_external_ipaddress' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_nat_enabled' ./.libs/liblinphone.so: undefined reference to `upnp_igd_delete_port_mapping' ./.libs/liblinphone.so: undefined reference to `upnp_igd_create' ./.libs/liblinphone.so: undefined reference to `upnp_igd_destroy' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_local_ipaddress' collect2: error: ld returned 1 exit status Makefile:670: recipe for target 'test_lsd' failed make[4]: *** [test_lsd] Error 1 ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_connection_status' ./.libs/liblinphone.so: undefined reference to `upnp_igd_refresh' ./.libs/liblinphone.so: undefined reference to `upnp_igd_add_port_mapping' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_device_id' ./.libs/liblinphone.so: undefined reference to `upnp_igd_start' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_external_ipaddress' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_nat_enabled' ./.libs/liblinphone.so: undefined reference to `upnp_igd_delete_port_mapping' ./.libs/liblinphone.so: undefined reference to `upnp_igd_create' ./.libs/liblinphone.so: undefined reference to `upnp_igd_destroy' ./.libs/liblinphone.so: undefined reference to `upnp_igd_get_local_ipaddress' collect2: error: ld returned 1 exit status Makefile:674: recipe for target 'test_numbers' failed make[4]: *** [test_numbers] Error 1 make[4]: Leaving directory '/var/tmp/portage/net-voip/linphone-3.6.1/work/linphone-3.6.1/coreapi' Makefile:792: recipe for target 'all-recurs ive' failed And same cure.
Fixed in CVS.