Source: assimp Version: 3.0~dfsg-4 Severity: serious Justification: fails to build from source (but built successfully in the past) Tags: sid stretch User: debian-...@lists.debian.org Usertags: libstdc++-cxx11 Control: block 790980 with -1
This command, after configuring sbuild (with automatic package upgrades), emulates what the official buildds would do soon to recompile assimp against the new libstdc++ ABI: sbuild -m'Test build <nobody@localhost>' -d unstable \ --make-binNMU='Rebuild with g++-5' assimp_3.0~dfsg-4 (You could get a similar result without sbuild by rebuilding in an up-to-date unstable chroot or on an up-to-date unstable system.) This fails to build with: dpkg-gensymbols: warning: some new symbols appeared in the symbols file: see diff output below dpkg-gensymbols: warning: some symbols or patterns disappeared in the symbols file: see diff output below dpkg-gensymbols: warning: debian/libassimp3/DEBIAN/symbols doesn't match completely debian/libassimp3.symbols ABI removed: - (c++)"Assimp::Importer::GetPropertyString(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 2.0.863 - (c++)"Assimp::Importer::SetPropertyString(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool*)@Base" 2.0.863 New ABI: + _ZN6Assimp8Importer17SetPropertyStringEPKcRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPb@Base 3.0~dfsg + _ZNK6Assimp8Importer17GetPropertyStringEPKcRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE@Base 3.0~dfsg which c++filt says means: Assimp::Importer::SetPropertyString(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool*)@Base Assimp::Importer::GetPropertyString(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base I think this means the answer to https://bugs.debian.org/790980 is, yes, assimp's ABI has changed. However, assimp's only reverse dependencies seem to be doomsday and mrpt, neither of which actually mention PropertyString anywhere in their code; I think this means it's up to the package maintainer whether to do a transition (to libassimp3v5) or whether to just change the symbols file and continue? For completeness, here are the symbols that were removed, but are presumably non-problematic because they are marked (optional) anyway: - (c++|optional)"Assimp::IOStream::~IOStream()@Base" 2.0.863 - (c++|optional)"Assimp::IOSystem::~IOSystem()@Base" 2.0.863 - (c++|optional)"Assimp::LogStream::~LogStream()@Base" 2.0.863 - (c++|optional)"Assimp::Logger::~Logger()@Base" 2.0.863 - (c++|optional)"Assimp::ProgressHandler::~ProgressHandler()@Base" 2.0.863 Regards, S -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org