Faycal El Karaa created PROTON-2316:
---------------------------------------
Summary: Cannot build Qpid C++ 1.39
Key: PROTON-2316
URL: https://issues.apache.org/jira/browse/PROTON-2316
Project: Qpid Proton
Issue Type: Bug
Components: cpp-binding
Affects Versions: proton-c-0.33.0
Environment: Linux Mint 20, gcc 9.3.0, boost 1.75
Reporter: Faycal El Karaa
Fix For: proton-c-0.34.0
I am trying to build qpid 1.39.0 on Linux Mint 20 with gcc 9.3.0 and boost
1.75. The build fails with the following error:
[ 0%] Building CXX object
src/CMakeFiles/qpidtypes.dir/qpid/types/Variant.cpp.o
[ 0%] Linking CXX shared library libqpidtypes.so
[ 0%] Built target qpidtypes
[ 1%] Building CXX object
src/CMakeFiles/qpidcommon.dir/qpid/framing/MethodBodyDefaultVisitor.cpp.o
In file included from
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/AMQMethodBody.h:26,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/ConnectionStartBody.h:30,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/all_method_bodies.h:30,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/MethodBodyDefaultVisitor.cpp:29:
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/ProtocolVersion.h: In
member function ‘bool
qpid::framing::ProtocolVersion::operator!=(qpid::framing::ProtocolVersion)
const’:
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/ProtocolVersion.h:56:93:
error: implicitly-declared ‘constexpr
qpid::framing::ProtocolVersion::ProtocolVersion(const
qpid::framing::ProtocolVersion&)’ is deprecated [-Werror=deprecated-copy]
56 | QPID_COMMON_INLINE_EXTERN bool operator!=(ProtocolVersion p) const
\{ return ! (*this == p); }
| ^
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/ProtocolVersion.h:53:41:
note: because ‘qpid::framing::ProtocolVersion’ has user-provided
‘qpid::framing::ProtocolVersion&
qpid::framing::ProtocolVersion::operator=(qpid::framing::ProtocolVersion)’
53 | QPID_COMMON_EXTERN ProtocolVersion& operator=(ProtocolVersion p);
| ^~~~~~~~
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/ProtocolVersion.h:55:56:
note: initializing argument 1 of ‘bool
qpid::framing::ProtocolVersion::operator==(qpid::framing::ProtocolVersion)
const’
55 | QPID_COMMON_EXTERN bool operator==(ProtocolVersion p) const;
| ~~~~~~~~~~~~~~~~^
In file included from
/usr/local/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
from /usr/local/include/boost/smart_ptr/detail/yield_k.hpp:23,
from
/usr/local/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
from
/usr/local/include/boost/smart_ptr/detail/spinlock.hpp:42,
from
/usr/local/include/boost/smart_ptr/detail/spinlock_pool.hpp:25,
from /usr/local/include/boost/smart_ptr/shared_ptr.hpp:29,
from /usr/local/include/boost/shared_ptr.hpp:17,
from
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/AMQMethodBody.h:29,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/ConnectionStartBody.h:30,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/all_method_bodies.h:30,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/MethodBodyDefaultVisitor.cpp:29:
/usr/local/include/boost/bind.hpp: At global scope:
/usr/local/include/boost/bind.hpp:36:1: note: #pragma message: The practice of
declaring the Bind placeholders (_1, _2, ...) in the global namespace is
deprecated. Please use <boost/bind/bind.hpp> + using namespace
boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the
current behavior.
36 | BOOST_PRAGMA_MESSAGE(
| ^~~~~~~~~~~~~~~~~~~~
In file included from
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/RangeSet.h:25,
from
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/SequenceSet.h:25,
from
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/framing/amqp_types_full.h:35,
from
_/home/faycal/Projects/qpid-cpp-1.39.0/build/src/_../include/qpid/framing/Header.h:32,
from
_/home/faycal/Projects/qpid-cpp-1.39.0/build/src/_../include/qpid/framing/amqp_structs.h:30,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/AMQP_ServerOperations.h:32,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/ConnectionStartBody.h:31,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/all_method_bodies.h:30,
from
/home/faycal/Projects/qpid-cpp-1.39.0/build/src/qpid/framing/MethodBodyDefaultVisitor.cpp:29:
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/InlineVector.h: In instantiation
of ‘qpid::InlineVector<T, Max, Alloc>::InlineVector(const qpid::InlineVector<T,
Max, Alloc>&) [with T = qpid::Range<qpid::framing::SequenceNumber>; long
unsigned int Max = 3; Alloc =
std::allocator<qpid::Range<qpid::framing::SequenceNumber> >]’:
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/RangeSet.h:98:7: required from
here
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/InlineVector.h:62:15: error:
implicitly-declared
‘qpid::InlineVector<qpid::Range<qpid::framing::SequenceNumber>, 3,
std::allocator<qpid::Range<qpid::framing::SequenceNumber> > >&
qpid::InlineVector<qpid::Range<qpid::framing::SequenceNumber>, 3,
std::allocator<qpid::Range<qpid::framing::SequenceNumber> > >::operator=(const
qpid::InlineVector<qpid::Range<qpid::framing::SequenceNumber>, 3,
std::allocator<qpid::Range<qpid::framing::SequenceNumber> > >&)’ is deprecated
[-Werror=deprecated-copy]
62 | *this = x;
| ~~~~~~^~~
/home/faycal/Projects/qpid-cpp-1.39.0/src/qpid/InlineVector.h:60:5: note:
because ‘qpid::InlineVector<qpid::Range<qpid::framing::SequenceNumber>, 3,
std::allocator<qpid::Range<qpid::framing::SequenceNumber> > >’ has
user-provided ‘qpid::InlineVector<T, Max, Alloc>::InlineVector(const
qpid::InlineVector<T, Max, Alloc>&) [with T =
qpid::Range<qpid::framing::SequenceNumber>; long unsigned int Max = 3; Alloc =
std::allocator<qpid::Range<qpid::framing::SequenceNumber> >]’
60 | InlineVector(const InlineVector& x) : Base() {
| ^~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [src/CMakeFiles/qpidcommon.dir/build.make:63:
src/CMakeFiles/qpidcommon.dir/qpid/framing/MethodBodyDefaultVisitor.cpp.o]
Error 1
make[1]: *** [CMakeFiles/Makefile2:1457: src/CMakeFiles/qpidcommon.dir/all]
Error 2
make: *** [Makefile:163: all] Error 2
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]