### Description Error building libprint.so on Fedora 25 with gcc-6.3.1-1.fc25.x86_64. I've started seeing these build errors resulting in build failures. I'm not sure where to start resolving this :( ``` make[2]: Entering directory '/builddir/build/BUILD/kamailio-5.0.1/src/modules/print_lib' Makefile.defs defs skipped Makefile.defs defs skipped gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.0.1"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 6.3.1"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5000001 -DCFG_DIR='"/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DSER_MOD_INTERFACE -DMOD_NAME='"print_lib"' -c print_lib.c -o print_lib.o -MMD -MP make[3]: Entering directory '/builddir/build/BUILD/kamailio-5.0.1/src/lib/print' Makefile.defs defs skipped make[3]: Entering directory '/builddir/build/BUILD/kamailio-5.0.1/src/lib/print' Makefile.defs defs skipped install mode Makefile.defs defs skipped install mode Makefile.defs defs skipped gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.0.1"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 6.3.1"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5000001 -DCFG_DIR='"/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -c print.c -o print.o -MMD -MP gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.0.1"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 6.3.1"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5000001 -DCFG_DIR='"/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -c print.c -o print.o -MMD -MP ln: failed to create symbolic link 'libprint.so.1': File exists ../../Makefile.libs:107: recipe for target 'libprint.so.1' failed make[3]: [libprint.so.1] Error 1 (ignored) ln: failed to create symbolic link 'libprint.so': File exists make[3]: [libprint.so] Error 1 (ignored) ../../Makefile.libs:113: recipe for target 'libprint.so' failed gcc -shared -m64 -Wl,-O2 -Wl,-E -Wl,-soname,libprint.so.1 print.o -o libprint.so.1.2 gcc -shared -m64 -Wl,-O2 -Wl,-E -Wl,-soname,libprint.so.1 print.o -o libprint.so.1.2 make[4]: Entering directory '/builddir/build/BUILD/kamailio-5.0.1/src/lib/print' Makefile.defs defs skipped install mode touch /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio//libprint.so.1.2 install -m 755 libprint.so.1.2 /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio/ rm -f /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio//libprint.so.1 \ /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio//libprint.so cd /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio/ ; ln -s libprint.so.1.2 libprint.so.1 cd /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio/ ; ln -s libprint.so.1.2 libprint.so make[4]: Leaving directory '/builddir/build/BUILD/kamailio-5.0.1/src/lib/print' make[3]: Leaving directory '/builddir/build/BUILD/kamailio-5.0.1/src/lib/print' make[3]: Leaving directory '/builddir/build/BUILD/kamailio-5.0.1/src/lib/print' gcc -shared -m64 -Wl,-O2 -Wl,-E print_lib.o -L../../lib/print/ -lprint -Wl,-rpath,/usr/lib64/kamailio/ -o print_lib.so touch /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio/modules/print_lib.so install -m 755 print_lib.so /builddir/build/BUILDROOT/kamailio-5.0.1-2.gitfdb4538.fc25.x86_64/usr/lib64/kamailio/modules make[2]: Leaving directory '/builddir/build/BUILD/kamailio-5.0.1/src/modules/print_lib' ```
It is just some error of `ln` that is ignored after all (as mentioned in the parenthesis). Do you get any module or lib not build/installed?
The build completes successfully, but package dependencies aren't created properly. I'm continuing testing to see if its related to parallel build.
Did you get any other details on this?
Not yet, though I have time slotted for tomorrow to try and figure it out.
Well, unfortunately I can't reproduce this every time. I can only find that it's more likely to happen when I do a concurrent i386/x86_64 build using Koji/Mock, which of course is probably not useful information. What happens if the link isn't created properly, is doesn't get pulled in as a package dependency so while the Kamailio RPM provides the link, it isn't included in the list of provides (do yum/dnf fail).
Closed #1088.
I'll close this for now since I can't reproduce it reliably.