Jim,

I believe this has also turned up on FC8 with the boost update and need to be updated to
work with the new version of boost. Thanks for spotting the typos.

Carl.


Jim Hague wrote:
Hi,

I've checked out svn.apache.org/repos/asf/incubator/qpid/trunk and I'm trying to build the C++ broker.

I'm doing this on a Debian Unstable box. This has later versions of a couple of packages than the versions listed in the README - pkg-config is 0.22, Boost is 1.34.1. I am assuming that the requirement in the README for gcc as 3.2.3 is a typo, and should be 4.2.3.

The build fails in qpid/broker/Connection.cpp. Before I start brushing the rust off my C++ skills, has anyone else tried building with Boost 1.34.1?

Jim

qpid/broker/Connection.cpp: In member function 'qpid::broker::SessionHandler& qpid::broker::Connection::getChannel(qpid::framing::ChannelId)': qpid/broker/Connection.cpp:108: error: invalid initialization of non-const reference of type 'qpid::broker::SessionHandler&' from a temporary of type 'boost::ptr_container_detail::ref_pair<short unsigned int, qpid::broker::SessionHandler* const>' /usr/include/boost/bind/mem_fn_template.hpp: In member function 'R boost::_mfi::mf0<R, T>::call(U&, const void*) const [with U = const boost::ptr_container_detail::ref_pair<short unsigned int, qpid::broker::SessionHandler* const>, R = void, T = qpid::broker::SessionHandler]': /usr/include/boost/bind/mem_fn_template.hpp:61: instantiated from 'R boost::_mfi::mf0<R, T>::operator()(const U&) const [with U = boost::ptr_container_detail::ref_pair<short unsigned int, qpid::broker::SessionHandler* const>, R = void, T = qpid::broker::SessionHandler]' /usr/include/boost/bind.hpp:231: instantiated from 'void boost::_bi::list1<A1>::operator()(boost::_bi::type<void>, F&, A&, int) [with F = boost::_mfi::mf0<void, qpid::broker::SessionHandler>, A = boost::_bi::list1<const boost::ptr_container_detail::ref_pair<short unsigned int, qpid::broker::SessionHandler* const>&>, A1 = boost::arg<1> (*)()]' /usr/include/boost/bind/bind_template.hpp:47: instantiated from 'typename boost::_bi::result_traits<R, F>::type boost::_bi::bind_t<R, F, L>::operator() (const A1&) [with A1 = boost::ptr_container_detail::ref_pair<short unsigned int, qpid::broker::SessionHandler* const>, R = void, F = boost::_mfi::mf0<void, qpid::broker::SessionHandler>, L = boost::_bi::list1<boost::arg<1> (*)()>]' /usr/include/c++/4.2/bits/stl_algo.h:159: instantiated from '_Function std::for_each(_InputIterator, _InputIterator, _Function) [with _InputIterator = boost::ptr_map_iterator<std::_Rb_tree_iterator<std::pair<const short unsigned int, void*> >, short unsigned int, qpid::broker::SessionHandler* const>, _Function = boost::_bi::bind_t<void, boost::_mfi::mf0<void, qpid::broker::SessionHandler>, boost::_bi::list1<boost::arg<1> (*)()> >]'
qpid/broker/Connection.cpp:82:   instantiated from here
/usr/include/boost/bind/mem_fn_template.hpp:40: error: no matching function for call to 'get_pointer(const boost::ptr_container_detail::ref_pair<short unsigned int, qpid::broker::SessionHandler* const>&)' /usr/include/boost/bind/mem_fn_template.hpp:40: error: return-statement with a value, in function returning 'void'
make[3]: *** [qpid/broker/Connection.lo] Error 1
make[3]: Leaving directory `/home/jim/work/src/qpid-trunk/qpid/cpp/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/jim/work/src/qpid-trunk/qpid/cpp/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/jim/work/src/qpid-trunk/qpid/cpp/src'
make: *** [all-recursive] Error 1


Reply via email to