On CURRENT (FreeBSD 13.0-CURRENT #72 r345659: Thu Mar 28 22:10:05 CET 2019 amd64) compilation/upgrade of port print/tex-xetex fails to succeed with the error shown below. Ports tree is at r497159. [...] libtool: link: c++ -O2 -pipe -fstack-protector -fno-strict-aliasing -std=gnu++11 -fstack-protector -o xetex xetexdir/xetex-xetexextra.o synctexdir/xetex-synctex.o xetex-xetexini.o xetex-xetex0.o xetex-xetex-pool.o libxetex.a -L/usr/local/lib -lharfbuzz-icu -lharfbuzz -lgraphite2 -licui18n -licuuc -licudata -lpthread -lTECkit /usr/ports/print/tex-xetex/work/texlive-20150521-source/libs/poppler/libpoppler.a -lpng16 -lz -lfontconfig -lfreetype lib/lib.a -lkpathsea -lm ld: error: undefined symbol: std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) >>> referenced by stl_tree.h:1771 (/usr/local/lib/gcc8/include/c++/bits/stl_tree.h:1771) >>> Form.o:(std::pair<std::_Rb_tree_iterator<int>, bool> std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_insert_unique<int const&>(int const&)) in archive /usr/ports/print/tex-xetex/work/texlive-20150521-source/libs/poppler/libpoppler.a
Same for print/tex-luatex, see below. The "fun part" is: after considering poppler being the culprit and rebuilding poppler and dependencies via "portmaster -dRf", done the same for print/texlive-base(!), the error is still persistent. I rebuilt lang/gcc8 then and ensured gcc8 is the default lang/gcc. No effect. This is now on CURRENT r346177 amd64, ports tree at r498813. A couple of weeks ago this error happened first on 12-STABLE and affected all machines of ours running 12-STABLE. Now it affects all CURRENT boxes the same way. We compile ports manually. On poudriere, things seem to be normal. Any suggestions how to track down the problem? [...] /bin/sh ./libtool --tag=CXX --mode=link c++ -Wimplicit -Wreturn-type -Wno-unknown-pragmas -Wno-write-strings -O2 -pipe -fstack-protector -fno-strict-aliasing -export-dynamic -fstack-protector -o luatex luatexdir/luatex-luatex.o mplibdir/luatex-lmplib.o libluatex.a libff.a libluamisc.a libluasocket.a -L/usr/local/lib -ltexlua52 libmplib.a -L/usr/local/lib -lmpfr -L/usr/local/lib -lgmp -L/usr/local/lib -lcairo -lpthread -L/usr/local/lib -lpixman-1 -L/usr/local/lib -fstack-protector -lzzip -lz -L/usr/local/lib -lpng16 -lz -lz /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a lib/lib.a -L/usr/local/lib -lkpathsea libmputil.a libunilib.a libmd5.a -lm libtool: link: c++ -Wimplicit -Wreturn-type -Wno-unknown-pragmas -Wno-write-strings -O2 -pipe -fstack-protector -fno-strict-aliasing -fstack-protector -o luatex luatexdir/luatex-luatex.o mplibdir/luatex-lmplib.o -fstack-protector -Wl,--export-dynamic libluatex.a libff.a libluamisc.a libluasocket.a -L/usr/local/lib -ltexlua52 libmplib.a -lmpfr -lgmp -lcairo -lpthread -lpixman-1 -lzzip -lpng16 -lz /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a lib/lib.a -lkpathsea libmputil.a libunilib.a libmd5.a -lm ld: error: undefined symbol: std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) >>> referenced by stl_tree.h:1771 (/usr/local/lib/gcc8/include/c++/bits/stl_tree.h:1771) >>> Form.o:(std::pair<std::_Rb_tree_iterator<int>, bool> std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_insert_unique<int const&>(int const&)) in archive /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a ld: error: undefined symbol: std::_Rb_tree_decrement(std::_Rb_tree_node_base*) >>> referenced by stl_tree.h:302 (/usr/local/lib/gcc8/include/c++/bits/stl_tree.h:302) >>> Form.o:(std::pair<std::_Rb_tree_iterator<int>, bool> std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::_M_insert_unique<int const&>(int const&)) in archive /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a ld: error: undefined symbol: std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) >>> referenced by stl_tree.h:2491 (/usr/local/lib/gcc8/include/c++/bits/stl_tree.h:2491) >>> Gfx.o:(Gfx::opXObject(Object*, int)) in archive /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a ld: error: undefined symbol: std::__throw_length_error(char const*) >>> referenced by stl_vector.h:1643 (/usr/local/lib/gcc8/include/c++/bits/stl_vector.h:1643) >>> CachedFile.o:(std::vector<CachedFile::Chunk, std::allocator<CachedFile::Chunk> >::_M_default_append(unsigned long)) in archive /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a ld: error: undefined symbol: std::__throw_out_of_range_fmt(char const*, ...) >>> referenced by stl_vector.h:960 (/usr/local/lib/gcc8/include/c++/bits/stl_vector.h:960) >>> StructElement.o:(StructElement::findAttribute(Attribute::Type, bool, Attribute::Owner) const) in archive /usr/ports/print/tex-luatex/work/texlive-20150521-source/libs/poppler/libpoppler.a
This problem is still present on several CURRENT and 12-STABLE boxes and I have no idea what causes it. Any ideas? It is driving me nuts ...
Comment 13 of PR 234221 solves the issue as a quick and dirty solution. *** This bug has been marked as a duplicate of bug 234221 ***