Holger Hoffstätte <hol...@applied-asynchrony.com> writes: > On Mon, 26 Dec 2016 22:25:59 +0100, lee wrote: > >> Holger Hoffstätte <hol...@applied-asynchrony.com> writes: >> >>> On Mon, 26 Dec 2016 21:09:08 +0100, lee wrote: >>> >>>> Hi, >>>> >>>> there are some things that refuse to compile. One of them is >>>> openimageio. >>>> >>>> Is this a bug, or am I missing something? Do I need to update something >>>> else first? >>> >>> The latter, sort of. The error in question.. >>> >> >>> [...] >>>> | ../libOpenImageIO/libOpenImageIO.so.1.6.13: undefined reference to >>>> `Imf_2_1::Header::name[abi:cxx11]() const' >>>> | ../libOpenImageIO/libOpenImageIO.so.1.6.13: undefined reference to >>>> `Imf_2_1::Header::setType(std::__cxx11::basic_string<char, >>>> std::char_traits<char>, std::allocator<char> > const&)' >>>> | ../libOpenImageIO/libOpenImageIO.so.1.6.13: undefined reference to >>>> | `Imf_2_1::TypedAttribute<std::__cxx11::basic_string<char, >>>> | std::char_traits<char>, std::allocator<char> > >>>> | >::writeValueTo(Imf_2_1::OStream&, int) const' >>>> | collect2: error: ld returned 1 exit status >>> [..] >>> >>> ..indicates a mismatch in C++11 ABI which changed in gcc5. What happens is >>> that one the >>> dependencies of openimageio was built against the old C++11 std::string ABI >>> (hence the >>> link errors), and needs to be rebuilt. It looks to be "Imf" aka libIlmImf, >>> whatever that is. Try to rebuild it with --oneshot and it should work. >>> If a similar error pops up for a different dependency, repeat. :) >> >> Hm, this is really bad because it's difficult to figure out what needs >> to be rebuilt. Is there a way to rebuild everything in some order that >> works? > > equery b <file> or epm -qif tells you which package a file belongs to. > Purely by searching vie emerge -s it looks like libIlmImf could be > media-libs/ilmbase.
Yes, I have rebuilt those, and others, using trial and error to figure out what needs to be rebuilt. > A full-system approach (probably better in your case) is explained here: > https://wiki.gentoo.org/wiki/Upgrading_from_gcc-4.x_to_gcc-5.x Thanks! Seems all I need to do is the 'revdep-rebuild', which is now running. I hope I don't end up with an unbootable system ... >> Here's the next one already, and what would I need to rebuild for that? > > That looks like a completely different problem (hard to tell from the error) > but in any case _fix one problem at a time_. That was some more packages that needed to be rebuilt. The only thing that doesn't compile yet is cinelerra, which I don't need for now. Maybe it works once all the libraries are rebuilt.