I downloaded the build logs and filtered them to show the missing symbols that were not already marked as optional.
plugwash@thinkpad:~$ wget -O zimlib.log 'https://buildd.debian.org/status/fetch.php?pkg=zimlib&arch=amd64&ver=4.0.4-5%2Bb1&stamp=1591384179&raw=0' plugwash@thinkpad:~$ html2text -width 100000 zimlib.log | grep MISSING | grep -v optional +#MISSING: 4.0.4-5+b1# _ZTIN6icu_6314StringByteSinkINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE@Base 4.0.4 +#MISSING: 4.0.4-5+b1# _ZTSN6icu_6314StringByteSinkINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE@Base 4.0.4 +#MISSING: 4.0.4-5+b1# _ZTVN6icu_6314StringByteSinkINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE@Base 4.0.4 plugwash@thinkpad:~$ Decoding these with c++filt -n goves typeinfo for icu_63::StringByteSink<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > typeinfo name for icu_63::StringByteSink<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > vtable for icu_63::StringByteSink<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > These look like ICU template instantiations to me and seem unlikely to be part of the public interface of zimlib. If I was the maintainer I would probablly just mark them as optional.