Bug 236882 - print/tex-xetex: d: error: undefined symbol:
Summary: print/tex-xetex: d: error: undefined symbol:
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Hiroki Sato
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-29 16:35 UTC by O. Hartmann
Modified: 2019-04-13 17:27 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (hrs)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description O. Hartmann 2019-03-29 16:35:53 UTC
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
Comment 1 O. Hartmann 2019-04-13 17:27:03 UTC
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