Hello, This is essentially a won't fix. compiling boost with gcc5, which uses C++11 ABI, changes boost ABI and breaks most reverse dependencies. The boost maintainer decided against backporting fixes to older boost1.55, and rename the sonames throughout as that would be non-standard. Boost 1.58 and later is the default in testing and unstable, and it uses gcc5 and thus the C++11 ABI.
Thus your options are to use: (a) gcc4.9 or lower, C++98 ABI, and debian's boost1.55 or lower. (b) gcc5 or better, C++11 ABI, and debian's boost1.57 or better. And no other combinations are supported on debian. Boost1.55 has been removed from testing, and is still stuck in unstable which I am planning to take actions to get it removed from there as well. Regards, Dimitri. On 29 October 2015 at 15:34, Christophe Trophime <[email protected]> wrote: > Source: boost1.55 > Version: 1.55.0+dfsg-4 > Severity: important > > Dear Maintainer, > > I've tried to backport latest boost1.55 to stretch (using pdebuild). > I ran into some compiling errors: > > "g++" -ftemplate-depth-300 -g -O2 -fstack-protector-strong -Wformat > -Werror=format-security -Wno-unused-local-typedefs -O3 -finline-functions > -Wno- > inline -Wall -g -D_FORTIFY_SOURCE=2 -g0 -DBOOST_ALL_NO_LIB=1 > -DBOOST_DETAIL_CONTAINER_FWD -DBOOST_FILESYSTEM_NO_DEPRECATED > -DBOOST_FILESYSTEM_STATIC_LINK=1 -DBOOST_SYSTEM_STATIC_LINK=1 -DNDEBUG > -I"../.." -c -o "../../bin.v2/tools/quickbook/src/gcc-5.2.1/release/debug- > symbols-on/link-static/files.o" "src/files.cpp" > > In file included from ../../boost/functional/hash/hash.hpp:540:0, > from ../../boost/functional/hash.hpp:6, > from ../../boost/unordered/unordered_map.hpp:20, > from ../../boost/unordered_map.hpp:16, > from src/files.cpp:12: > ../../boost/functional/hash/extensions.hpp:54:33: error: 'template<class T, > class A> std::size_t boost::hash_value' conflicts with a previous declaration > std::size_t hash_value(std::list<T, A> const& v); > ^ > ../../boost/functional/hash/extensions.hpp:52:17: note: previous declaration > 'namespace boost { }::hash_value' > std::size_t hash_value(std::vector<T, A> const&); > ^ > ../../boost/functional/hash/extensions.hpp:54:28: error: reference to 'list' > is > ambiguous > std::size_t hash_value(std::list<T, A> const& v); > ^ > In file included from ../../boost/functional/hash/extensions.hpp:17:0, > from ../../boost/functional/hash/hash.hpp:540, > from ../../boost/functional/hash.hpp:6, > from ../../boost/unordered/unordered_map.hpp:20, > from ../../boost/unordered_map.hpp:16, > from src/files.cpp:12: > ../../boost/detail/container_fwd.hpp:139:47: note: candidates are: > template<class T, class Allocator> class std::list > template <class T, class Allocator> class list; > ^ > In file included from /usr/include/c++/5/list:63:0, > from ../../boost/filesystem/path_traits.hpp:27, > from ../../boost/filesystem/path.hpp:25, > from src/files.hpp:15, > from src/files.cpp:10: > /usr/include/c++/5/bits/stl_list.h:507:11: note: > template<class > _Tp, class _Alloc> class std::__cxx11::list > class list : protected _List_base<_Tp, _Alloc> > ^ > In file included from ../../boost/functional/hash/hash.hpp:540:0, > from ../../boost/functional/hash.hpp:6, > from ../../boost/unordered/unordered_map.hpp:20, > from ../../boost/unordered_map.hpp:16, > from src/files.cpp:12: > ../../boost/functional/hash/extensions.hpp:54:39: error: expected primary- > expression before ',' token > std::size_t hash_value(std::list<T, A> const& v); > ^ > ../../boost/functional/hash/extensions.hpp:54:42: error: expected primary- > expression before '>' token > std::size_t hash_value(std::list<T, A> const& v); > ^ > ../../boost/functional/hash/extensions.hpp:54:44: error: expected primary- > expression before 'const' > std::size_t hash_value(std::list<T, A> const& v); > ^ > ../../boost/functional/hash/extensions.hpp:54:52: error: expression list > treated as compound expression in initializer [-fpermissive] > std::size_t hash_value(std::list<T, A> const& v); > ^ > ../../boost/functional/hash/extensions.hpp:54:17: warning: variable templates > only available with -std=c++14 or -std=gnu++14 > std::size_t hash_value(std::list<T, A> const& v); > ^ > ../../boost/functional/hash/extensions.hpp:85:33: error: 'template<class T, > class A> std::size_t boost::hash_value' conflicts with a previous declaration > std::size_t hash_value(std::list<T, A> const& v) > ^ > ../../boost/functional/hash/extensions.hpp:67:17: note: previous declaration > 'namespace boost { }::hash_value' > std::size_t hash_value(std::complex<T> const&); > ^ > ../../boost/functional/hash/extensions.hpp:85:28: error: reference to 'list' > is > ambiguous > std::size_t hash_value(std::list<T, A> const& v) > ^ > In file included from ../../boost/functional/hash/extensions.hpp:17:0, > from ../../boost/functional/hash/hash.hpp:540, > from ../../boost/functional/hash.hpp:6, > from ../../boost/unordered/unordered_map.hpp:20, > from ../../boost/unordered_map.hpp:16, > from src/files.cpp:12: > ../../boost/detail/container_fwd.hpp:139:47: note: candidates are: > template<class T, class Allocator> class std::list > template <class T, class Allocator> class list; > ^ > In file included from /usr/include/c++/5/list:63:0, > from ../../boost/filesystem/path_traits.hpp:27, > from ../../boost/filesystem/path.hpp:25, > from src/files.hpp:15, > from src/files.cpp:10: > /usr/include/c++/5/bits/stl_list.h:507:11: note: > template<class > _Tp, class _Alloc> class std::__cxx11::list > class list : protected _List_base<_Tp, _Alloc> > ^ > In file included from ../../boost/functional/hash/hash.hpp:540:0, > from ../../boost/functional/hash.hpp:6, > from ../../boost/unordered/unordered_map.hpp:20, > from ../../boost/unordered_map.hpp:16, > from src/files.cpp:12: > ../../boost/functional/hash/extensions.hpp:85:39: error: expected primary- > expression before ',' token > std::size_t hash_value(std::list<T, A> const& v) > ^ > ../../boost/functional/hash/extensions.hpp:85:42: error: expected primary- > expression before '>' token > std::size_t hash_value(std::list<T, A> const& v) > ^ > ../../boost/functional/hash/extensions.hpp:85:44: error: expected primary- > expression before 'const' > std::size_t hash_value(std::list<T, A> const& v) > ^ > ../../boost/functional/hash/extensions.hpp:85:52: error: expression list > treated as compound expression in initializer [-fpermissive] > std::size_t hash_value(std::list<T, A> const& v) > ^ > ../../boost/functional/hash/extensions.hpp:85:17: warning: variable templates > only available with -std=c++14 or -std=gnu++14 > std::size_t hash_value(std::list<T, A> const& v) > ^ > ../../boost/functional/hash/extensions.hpp:86:5: error: expected ';' before > '{' > token > { > ^ > src/files.cpp:375:9: error: reference to 'list' is ambiguous > std::list<mapped_file> mapped_files; > ^ > In file included from ../../boost/functional/hash/extensions.hpp:17:0, > from ../../boost/functional/hash/hash.hpp:540, > from ../../boost/functional/hash.hpp:6, > from ../../boost/unordered/unordered_map.hpp:20, > from ../../boost/unordered_map.hpp:16, > from src/files.cpp:12: > ../../boost/detail/container_fwd.hpp:139:47: note: candidates are: > template<class T, class Allocator> class std::list > template <class T, class Allocator> class list; > ^ > In file included from /usr/include/c++/5/list:63:0, > from ../../boost/filesystem/path_traits.hpp:27, > from ../../boost/filesystem/path.hpp:25, > from src/files.hpp:15, > from src/files.cpp:10: > /usr/include/c++/5/bits/stl_list.h:507:11: note: > template<class > _Tp, class _Alloc> class std::__cxx11::list > class list : protected _List_base<_Tp, _Alloc> > ^ > In file included from ../../boost/filesystem/path_traits.hpp:23:0, > from ../../boost/filesystem/path.hpp:25, > from src/files.hpp:15, > from src/files.cpp:10: > ../../boost/system/error_code.hpp:222:36: warning: > 'boost::system::posix_category' defined but not used [-Wunused-variable] > static const error_category & posix_category = generic_category(); > ^ > ../../boost/system/error_code.hpp:223:36: warning: 'boost::system::errno_ecat' > defined but not used [-Wunused-variable] > static const error_category & errno_ecat = generic_category(); > ^ > ../../boost/system/error_code.hpp:224:36: warning: > 'boost::system::native_ecat' > defined but not used [-Wunused-variable] > static const error_category & native_ecat = system_category(); > ^ > ...failed gcc.compile.c++ ../../bin.v2/tools/quickbook/src/gcc-5.2.1/release > /debug-symbols-on/link-static/files.o... > gcc.compile.c++ ../../bin.v2/tools/quickbook/src/gcc-5.2.1/release/debug- > symbols-on/link-static/input_path.o > > I got the same error on sid rebuilding the package with pdebuild. > > Best. > C > > > > -- System Information: > Debian Release: stretch/sid > APT prefers testing > APT policy: (1100, 'testing') > Architecture: amd64 (x86_64) > Foreign Architectures: i386 > > Kernel: Linux 3.16.0-4-amd64 (SMP w/24 CPU cores) > Locale: LANG=en_GB.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=locale: Cannot set > LC_CTYPE to default locale: No such file or directory > locale: Cannot set LC_MESSAGES to default locale: No such file or directory > locale: Cannot set LC_ALL to default locale: No such file or directory > ANSI_X3.4-1968) > Shell: /bin/sh linked to /bin/dash > Init: systemd (via /run/systemd/system) > > _______________________________________________ > pkg-boost-devel mailing list > [email protected] > http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-boost-devel -- Regards, Dimitri.

