Bug#653806: FTBFS with Boost 1.48: error: 'boost::noncopyable_::noncopyable::noncopyable(const boost::noncopyable_::noncopyable&)' is private

Steve M. Robbins smr at debian.org
Sat Dec 31 01:39:49 UTC 2011


Source: wesnoth-1.8
Version: 1.8.6-1
Severity: normal

Package failed to build using new Boost 1.48:

	x86_64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I..   -I/usr/include -I/usr/include/lua5.1   -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include   -pthread -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/cairo     -DHAVE_REVISION -I../intl -I../intl -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT  -DWESNOTH_PATH=\"/usr/share/games/wesnoth/1.8\" -DLOCALEDIR=\"/usr/share/games/wesnoth/1.8/locale\" -DHAS_RELATIVE_LOCALEDIR=0 -DFIFODIR=\"/var/run/wesnothd\" -DWESNOTH_PREFIX=\"/usr\" -O2 -W -Wall -ansi  -DDISABLE_POOL_ALLOC  -DHAVE_FRIBIDI -I/usr/include/fribidi   -D_X11     -I/usr/include -MT gui/widgets/tree_view_node.o -MD -MP -MF $depbase.Tpo -c -o gui/widgets/tree_view_node.o gui/widgets/tree_view_node.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
In file included from ./gui/widgets/grid.hpp:18:0,
                 from ./gui/widgets/container.hpp:18,
                 from ./gui/widgets/scrollbar_container.hpp:18,
                 from ./gui/auxiliary/window_builder/tree_view.hpp:20,
                 from ./gui/widgets/tree_view_node.hpp:18,
                 from gui/widgets/tree_view_node.cpp:17:
/usr/include/boost/noncopyable.hpp: In copy constructor 'gui2::twidget::twidget(const gui2::twidget&)':
./gui/widgets/widget.hpp:41:7:   instantiated from 'T* boost::new_clone(const T&) [with T = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/clone_allocator.hpp:68:33:   instantiated from 'static U* boost::heap_clone_allocator::allocate_clone(const U&) [with U = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:110:63:   instantiated from 'static boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_* boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::null_clone_allocator<allow_null_values>::allocate_clone(const Ty_*) [with bool allow_null_values = false, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_ = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:95:71:   instantiated from 'static boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_* boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::null_clone_allocator<allow_null_values>::allocate_clone_from_iterator(Iter) [with Iter = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, bool allow_null_values = false, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_ = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/detail/scoped_deleter.hpp:70:21:   instantiated from 'boost::ptr_container_detail::scoped_deleter<T, CloneAllocator>::scoped_deleter(InputIterator, InputIterator) [with InputIterator = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, T = gui2::ttree_view_node, CloneAllocator = boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::null_clone_allocator<false>]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:212:44:   instantiated from 'void boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::clone_back_insert(ForwardIterator, ForwardIterator) [with ForwardIterator = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:303:13:   instantiated from 'void boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::constructor_impl(I, I, std::forward_iterator_tag) [with I = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:348:13:   instantiated from 'boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::reversible_ptr_container(const boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>&) [with Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator> = boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, boost::heap_clone_allocator>]'
/usr/include/boost/ptr_container/ptr_sequence_adapter.hpp:203:26:   instantiated from 'boost::ptr_sequence_adapter<T, VoidPtrSeq, CloneAllocator>::ptr_sequence_adapter(const boost::ptr_sequence_adapter<T, VoidPtrSeq, CloneAllocator>&) [with T = gui2::ttree_view_node, VoidPtrSeq = std::vector<void*, std::allocator<void*> >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_sequence_adapter<T, VoidPtrSeq, CloneAllocator> = boost::ptr_sequence_adapter<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> >, boost::heap_clone_allocator>]'
/usr/include/boost/ptr_container/ptr_vector.hpp:31:11:   instantiated from 'boost::foreach_detail_::simple_variant<T>::simple_variant(const T&) [with T = boost::ptr_vector<gui2::ttree_view_node>]'
/usr/include/boost/foreach.hpp:648:95:   instantiated from 'boost::foreach_detail_::auto_any<boost::foreach_detail_::simple_variant<T> > boost::foreach_detail_::contain(const T&, bool*) [with T = boost::ptr_vector<gui2::ttree_view_node>]'
gui/widgets/tree_view_node.cpp:316:2:   instantiated from here
/usr/include/boost/noncopyable.hpp:27:7: error: 'boost::noncopyable_::noncopyable::noncopyable(const boost::noncopyable_::noncopyable&)' is private
./gui/widgets/widget.hpp:41:7: error: within this context
In file included from gui/widgets/tree_view_node.cpp:17:0:
./gui/widgets/tree_view_node.hpp: In copy constructor 'gui2::ttree_view_node::ttree_view_node(const gui2::ttree_view_node&)':
./gui/widgets/tree_view_node.hpp:28:7: note: synthesized method 'gui2::twidget::twidget(const gui2::twidget&)' first required here 
In file included from /usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:24:0,
                 from /usr/include/boost/ptr_container/ptr_sequence_adapter.hpp:20,
                 from /usr/include/boost/ptr_container/ptr_vector.hpp:20,
                 from ./gui/widgets/tree_view_node.hpp:20,
                 from gui/widgets/tree_view_node.cpp:17:
/usr/include/boost/ptr_container/clone_allocator.hpp: In function 'T* boost::new_clone(const T&) [with T = gui2::ttree_view_node]':
/usr/include/boost/ptr_container/clone_allocator.hpp:68:33:   instantiated from 'static U* boost::heap_clone_allocator::allocate_clone(const U&) [with U = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:110:63:   instantiated from 'static boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_* boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::null_clone_allocator<allow_null_values>::allocate_clone(const Ty_*) [with bool allow_null_values = false, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_ = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:95:71:   instantiated from 'static boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_* boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::null_clone_allocator<allow_null_values>::allocate_clone_from_iterator(Iter) [with Iter = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, bool allow_null_values = false, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::Ty_ = gui2::ttree_view_node]'
/usr/include/boost/ptr_container/detail/scoped_deleter.hpp:70:21:   instantiated from 'boost::ptr_container_detail::scoped_deleter<T, CloneAllocator>::scoped_deleter(InputIterator, InputIterator) [with InputIterator = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, T = gui2::ttree_view_node, CloneAllocator = boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, boost::heap_clone_allocator>::null_clone_allocator<false>]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:212:44:   instantiated from 'void boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::clone_back_insert(ForwardIterator, ForwardIterator) [with ForwardIterator = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:303:13:   instantiated from 'void boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::constructor_impl(I, I, std::forward_iterator_tag) [with I = boost::void_ptr_iterator<__gnu_cxx::__normal_iterator<void* const*, std::vector<void*, std::allocator<void*> > >, const gui2::ttree_view_node>, Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator]'
/usr/include/boost/ptr_container/detail/reversible_ptr_container.hpp:348:13:   instantiated from 'boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>::reversible_ptr_container(const boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator>&) [with Config = boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_container_detail::reversible_ptr_container<Config, CloneAllocator> = boost::ptr_container_detail::reversible_ptr_container<boost::ptr_container_detail::sequence_config<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> > >, boost::heap_clone_allocator>]'
/usr/include/boost/ptr_container/ptr_sequence_adapter.hpp:203:26:   instantiated from 'boost::ptr_sequence_adapter<T, VoidPtrSeq, CloneAllocator>::ptr_sequence_adapter(const boost::ptr_sequence_adapter<T, VoidPtrSeq, CloneAllocator>&) [with T = gui2::ttree_view_node, VoidPtrSeq = std::vector<void*, std::allocator<void*> >, CloneAllocator = boost::heap_clone_allocator, boost::ptr_sequence_adapter<T, VoidPtrSeq, CloneAllocator> = boost::ptr_sequence_adapter<gui2::ttree_view_node, std::vector<void*, std::allocator<void*> >, boost::heap_clone_allocator>]'
/usr/include/boost/ptr_container/ptr_vector.hpp:31:11:   instantiated from 'boost::foreach_detail_::simple_variant<T>::simple_variant(const T&) [with T = boost::ptr_vector<gui2::ttree_view_node>]'
/usr/include/boost/foreach.hpp:648:95:   instantiated from 'boost::foreach_detail_::auto_any<boost::foreach_detail_::simple_variant<T> > boost::foreach_detail_::contain(const T&, bool*) [with T = boost::ptr_vector<gui2::ttree_view_node>]'
gui/widgets/tree_view_node.cpp:316:2:   instantiated from here
/usr/include/boost/ptr_container/clone_allocator.hpp:34:27: note: synthesized method 'gui2::ttree_view_node::ttree_view_node(const gui2::ttree_view_node&)' first required here 
make[3]: *** [gui/widgets/tree_view_node.o] Error 1
make[3]: Leaving directory `/home/steve/Packages/boost-defaults/rebuilds/build/wesnoth-1.8/wesnoth-1.8-1.8.6/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/steve/Packages/boost-defaults/rebuilds/build/wesnoth-1.8/wesnoth-1.8-1.8.6'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/steve/Packages/boost-defaults/rebuilds/build/wesnoth-1.8/wesnoth-1.8-1.8.6'
make: *** [build-stamp] Error 2


Note that wesnoth-1.9 *does* build with Boost 1.48.  Perhaps
the old code could be adapted in a similar fashion to 1.9?



-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 3.1.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash





More information about the Pkg-games-devel mailing list