Bugzilla – Bug 1089818
qbittorrent: Fails to build with Boost 1.67.0 and libtorrent-rasterbar 1.1.6
Last modified: 2018-04-17 11:39:21 UTC
New Boost library has been released and unfortunately this package fails to build with it. The new boost library is already submitted to devel:libraries:c_c++/boost and will be submitted to openSUSE:Factory shortly.
> [ 78s] /usr/include/libtorrent/ip_filter.hpp: In member function 'void libtorrent::detail::filter_impl<Addr>::add_rule(Addr, Addr, int)':
> [ 78s] /usr/include/libtorrent/ip_filter.hpp:168:41: error: 'prior' is not a member of 'boost'
> [ 78s] boost::uint32_t last_access = boost::prior(j)->access;
> [ 78s] ^~~~~
> [ 78s] /usr/include/libtorrent/ip_filter.hpp:174:50: error: 'prior' is not a member of 'boost'
The cause of this is that boost::prior and boost::next have been moved. From Boost release notes,
Breaking change: <boost/utility.hpp> header no longer includes boost::next and boost::prior as they have been moved to the iterator module. Instead include <boost/next_prior.hpp>. Other uses of <boost/utility.hpp> are discouraged, it's better to use the header for the specific functionality instead.
The problem actually appears to originate from libtorrent-rasterbar. Patching it.
I'll just mark this as duplicate.
*** This bug has been marked as a duplicate of bug 1089812 ***