RE: buildworld FAILURE:googletest
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 31 Oct 2024 20:37:19 UTC
Larry Rosenman <ler_at_lerctr.org> wrote on Date: Tue, 29 Oct 2024 04:20:10 UTC : > Building /usr/obj/usr/src/amd64.amd64/secure/lib/libcrypto/RSA_sign.3.gz > ld: error: undefined symbol: > testing::internal::MakeAndRegisterTestInfo(char const*, char const*, > char const*, char const*, testing::internal::CodeLocation, void const*, > void (*)(), void (*)(), testing::internal::TestFactoryBase*) > >>> referenced by sample1_unittest.cc:76 > >>> (/usr/src/contrib/googletest/googletest/samples/sample1_unittest.cc:76) > >>> sample1_unittest.o:(_GLOBAL__sub_I_sample1_unittest.cc) > >>> referenced by sample1_unittest.cc:100 > >>> (/usr/src/contrib/googletest/googletest/samples/sample1_unittest.cc:100) > >>> sample1_unittest.o:(_GLOBAL__sub_I_sample1_unittest.cc) > >>> referenced by sample1_unittest.cc:103 > >>> (/usr/src/contrib/googletest/googletest/samples/sample1_unittest.cc:103) > >>> sample1_unittest.o:(_GLOBAL__sub_I_sample1_unittest.cc) > >>> referenced 3 more times > Building /usr/obj/usr/src/amd64.amd64/lib/libelf/gelf_newehdr.3.gz > Building > /usr/obj/usr/src/amd64.amd64/secure/lib/libcrypto/RSA_sign_ASN1_OCTET_STRING.3.gz > Building /usr/obj/usr/src/amd64.amd64/lib/libelf/gelf_newphdr.3.gz > Building /usr/obj/usr/src/amd64.amd64/secure/lib/libcrypto/RSA_size.3.gz > c++: error: linker command failed with exit code 1 (use -v to see > invocation) > Building /usr/obj/usr/src/amd64.amd64/kerberos5/libexec/hprop/hprop.o > Building /usr/obj/usr/src/amd64.amd64/lib/libelf/gelf_update_ehdr.3.gz > Building /usr/obj/usr/src/amd64.amd64/secure/lib/libcrypto/SCT_new.3.gz > *** [sample1_unittest.full] Error code 1 This is the LLVM 18 -> LLVM 19 toolchain upgrade activity not removing all the files from prior LLVM 18 use and then trying to use those files in LLVM 19 toolchain contexts, where some of the content is incompatible. See the 2024-Oct-24 : https://lists.freebsd.org/archives/dev-commits-src-main/2024-October/027468.html At the end it reports: QUOTE What I'm finding is that various .o files are not being rebuilt in the META_MODE build. For example, . . ./cddl/usr.sbin/zfsd/tests/zfsd_unittest.o . . ./examples/tests/tests/googletest/sample*_unittest.o have maintained old dates in the file system that predate the recent update that switched to std::string use. Systematic deletion of such .o files allowed META_MODE to then be able to complete the buildworld . The removes were (across multiple trees): # rm /usr/obj/BUILDs/main-*-*dbg-clang/usr/main-src/*/cddl/usr.sbin/zfsd/tests/*.o # rm /usr/obj/BUILDs/main-*-*dbg-clang/usr/main-src/*/share/examples/tests/tests/googletest*/*.o # rm /usr/obj/BUILDs/main-*-*dbg-clang/usr/main-src/*/tests/sys/capsicum*/*.o # rm /usr/obj/BUILDs/main-*-*dbg-clang/usr/main-src/*/tests/sys/fs/fusefs*/*.o # rm /usr/obj/BUILDs/main-*-*dbg-clang/usr/main-src/*/lib/googletest/tests/*/*.o END QUOTE It is possible that my removes were not the minimal set needed. But every one of those directories had an old, failing *.o file. No others did. Note: My naming and such for "/usr/obj/BUILDs/main-*-*dbg-clang/usr/main-src/" are not the defaults so take that part of the example text as just suggestive. === Mark Millard marklmi at yahoo.com