Dear Developers, I really appreciate your work for the project so it makes me really sorry to complain about the code, but probably commit r306905 breaks builds on i386 machines. I have been running 11.0-PRERELEASE on i386 machine for a few days. Upgrade from 9.3-STABLE through 10.3-STABLE went without an issue last week. Today I have tried to upgrade this system running on old Xeon without LM feature to latest version, but buildworld fails (see attached txt file). It is a quite old machine, where FreeBSD was installed 14 years ago, but regularly upgraded and always running supported branch. After reversion to r306777 world builds flawlessly. Best regards, -- Marek Zarychta -------------- next part -------------- --- all_subdir_usr.sbin --- --- all_subdir_usr.sbin/devctl --- --- .depend --- echo devctl.full: /usr/obj/usr/src/tmp/usr/lib/libc.a /usr/obj/usr/src/tmp/usr/lib/libdevctl.a >> .depend --- devctl.o --- clang -O2 -pipe -fno-strict-aliasing -march=pentium4 -g -MD -MF.depend.devctl.o -MTdevctl.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wthread-safety -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/usr.sbin/devctl/devctl.c -o devctl.o --- all_subdir_lib --- --- test_archive_digest.o --- clang -O2 -pipe -fno-strict-aliasing -I/usr/src/lib/libarchive -I/usr/obj/usr/src/lib/libarchive/tests -I/usr/src/contrib/libarchive/libarchive -I/usr/src/contrib/libarchive/test_utils -DHAVE_LIBLZMA=1 -DHAVE_LZMA_H=1 -march=pentium4 -g -MD -MF.depend.libarchive_test.test_archive_digest.o -MTtest_archive_digest.o -std=gnu99 -fstack-protector-strong -Qunused-arguments -c /usr/src/contrib/libarchive/libarchive/test/test_archive_digest.c -o test_archive_digest.o --- all_subdir_tests --- --- mqtest2.debug --- objcopy --only-keep-debug mqtest2.full mqtest2.debug --- mqtest2 --- objcopy --strip-debug --add-gnu-debuglink=mqtest2.debug mqtest2.full mqtest2 --- mqtest3 --- (cd /usr/src/tests/sys/mqueue && DEPENDFILE=.depend.mqtest3 NO_SUBDIR=1 make -f /usr/src/tests/sys/mqueue/Makefile _RECURSING_PROGS=t PROG=mqtest3 ) --- all_subdir_usr.sbin --- --- all_subdir_usr.sbin/devinfo --- ===> usr.sbin/devinfo (all) --- all_subdir_tests --- --- .depend.mqtest3 --- echo mqtest3.full: /usr/obj/usr/src/tmp/usr/lib/libc.a /usr/obj/usr/src/tmp/usr/lib/librt.a >> .depend.mqtest3 --- mqtest3.o --- clang -O2 -pipe -fno-strict-aliasing -I/usr/src/tests -march=pentium4 -g -MD -MF.depend.mqtest3.mqtest3.o -MTmqtest3.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wthread-safety -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/tests/sys/mqueue/mqtest3.c -o mqtest3.o /usr/src/tests/sys/mqueue/mqtest3.c:65:11: warning: implicit declaration of function 'mq_getfd_np' is invalid in C99 [-Wimplicit-function-declaration] FD_SET(mq_getfd_np(mq), &set); ^ --- all_subdir_usr.sbin --- --- .depend --- echo devinfo.full: /usr/obj/usr/src/tmp/usr/lib/libc.a /usr/obj/usr/src/tmp/usr/lib/libdevinfo.a >> .depend --- devinfo.o --- clang -O2 -pipe -fno-strict-aliasing -march=pentium4 -g -MD -MF.depend.devinfo.o -MTdevinfo.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wthread-safety -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/usr.sbin/devinfo/devinfo.c -o devinfo.o --- all_subdir_lib --- --- test_archive_getdate.o --- clang -O2 -pipe -fno-strict-aliasing -I/usr/src/lib/libarchive -I/usr/obj/usr/src/lib/libarchive/tests -I/usr/src/contrib/libarchive/libarchive -I/usr/src/contrib/libarchive/test_utils -DHAVE_LIBLZMA=1 -DHAVE_LZMA_H=1 -march=pentium4 -g -MD -MF.depend.libarchive_test.test_archive_getdate.o -MTtest_archive_getdate.o -std=gnu99 -fstack-protector-strong -Qunused-arguments -c /usr/src/contrib/libarchive/libarchive/test/test_archive_getdate.c -o test_archive_getdate.o --- all_subdir_tests --- 1 warning generated. --- mqtest3.full --- clang -O2 -pipe -fno-strict-aliasing -I/usr/src/tests -march=pentium4 -g -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wthread-safety -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -o mqtest3.full mqtest3.o -lrt --- all_subdir_usr.sbin --- --- all_subdir_usr.sbin/devctl --- --- devctl.full --- clang -O2 -pipe -fno-strict-aliasing -march=pentium4 -g -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wthread-safety -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -o devctl.full devctl.o -ldevctl --- all_subdir_tests --- mqtest3.o: In function `main': /usr/src/tests/sys/mqueue/mqtest3.c:98: undefined reference to `mq_getfd_np' /usr/src/tests/sys/mqueue/mqtest3.c:98: undefined reference to `mq_getfd_np' /usr/src/tests/sys/mqueue/mqtest3.c:99: undefined reference to `mq_getfd_np' /usr/src/tests/sys/mqueue/mqtest3.c:65: undefined reference to `mq_getfd_np' /usr/src/tests/sys/mqueue/mqtest3.c:65: undefined reference to `mq_getfd_np' mqtest3.o:/usr/src/tests/sys/mqueue/mqtest3.c:67: more undefined references to `mq_getfd_np' follow clang: error: linker command failed with exit code 1 (use -v to see invocation) *** [mqtest3.full] Error code 1 make[6]: stopped in /usr/src/tests/sys/mqueue 1 error make[6]: stopped in /usr/src/tests/sys/mqueue *** [mqtest3] Error code 2 make[5]: stopped in /usr/src/tests/sys/mqueue 1 error make[5]: stopped in /usr/src/tests/sys/mqueue *** [all_subdir_tests/sys/mqueue] Error code 2 make[4]: stopped in /usr/src/tests/sys 1 error make[4]: stopped in /usr/src/tests/sys *** [all_subdir_tests/sys] Error code 2 make[3]: stopped in /usr/src/tests 1 error make[3]: stopped in /usr/src/tests *** [all_subdir_tests] Error code 2 make[2]: stopped in /usr/src --- all_subdir_lib --- A failure has been detected in another branch of the parallel make make[6]: stopped in /usr/src/lib/libarchive/tests *** [libarchive_test] Error code 2 make[5]: stopped in /usr/src/lib/libarchive/tests 1 error make[5]: stopped in /usr/src/lib/libarchive/tests *** [all] Error code 2 make[4]: stopped in /usr/src/lib/libarchive 1 error make[4]: stopped in /usr/src/lib/libarchive *** [all_subdir_lib/libarchive] Error code 2 make[3]: stopped in /usr/src/lib 1 error make[3]: stopped in /usr/src/lib *** [all_subdir_lib] Error code 2 make[2]: stopped in /usr/src --- all_subdir_usr.sbin --- A failure has been detected in another branch of the parallel make -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: not available URL: <http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20161009/9f94eb74/attachment.sig>
If your problem is anything like mine was, buildworld is trying to link with /usr/lib/librt.so rather than the new one built during the buildworld build. As per a recent commit, the new librt will have the additional mq_getfd_np() symbol while the original /usr/lib/librt.so will not. That causes those unresolved reference errors for new code trying to use the mq_getfd_np() function. Try building and installing librt manually: cd /usr/src/lib/librt make && make install Then try buildworld again. Reference: https://svnweb.freebsd.org/base?view=revision&revision=306905 Best regards, Nathan Lay On Sun, Oct 9, 2016 at 4:57 PM, Marek Zarychta < zarychtam at plan-b.pwste.edu.pl> wrote:> Dear Developers, > > I really appreciate your work for the project so it makes me really > sorry to complain about the code, but probably commit r306905 breaks > builds on i386 machines. > I have been running 11.0-PRERELEASE on i386 machine for a few days. > Upgrade from 9.3-STABLE through 10.3-STABLE went without an issue last > week. Today I have tried to upgrade this system running on old Xeon > without LM feature to latest version, but buildworld fails (see attached > txt file). It is a quite old machine, where FreeBSD was installed 14 > years ago, but regularly upgraded and always running supported branch. > After reversion to r306777 world builds flawlessly. > > Best regards, > -- > Marek Zarychta >