Hi all,
Since I obviously won't succeed with this so easily, I'm opening a thread on
the subject. Many thanks to all who can help me.
System with AIX 5.3 / xlC 9.0 (yeah old as sh*t, but I can't do anything about
that soon) and Boost 1.34, building qpidc-0.20.
Anyway, I managed to go over some obstacles so far, but currently I'm stuck
with the following error(s):
[ 20%] Building CXX object
src/CMakeFiles/qpidcommon.dir/qpid/sys/posix/AsynchIO.o
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/posix/AsynchIO.cpp", line
96.5: 1540-0218 (S) The call does not match any parameter list for
"DispatchHandle::DispatchHandle".
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/DispatchHandle.h", line 88.24:
1540-1283 (I) "qpid::sys::DispatchHandle::DispatchHandle(const
qpid::sys::IOHandle &, Callback, Callback, Callback)" is not a viable candidate.
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/posix/AsynchIO.cpp", line
96.12: 1540-0256 (I) A parameter of type "const qpid::sys::IOHandle &" cannot
be initialized with an expression of type "const qpid::sys::Socket".
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/posix/AsynchIO.cpp", line
168.5: 1540-0218 (S) The call does not match any parameter list for
"DispatchHandle::DispatchHandle".
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/DispatchHandle.h", line 88.24:
1540-1283 (I) "qpid::sys::DispatchHandle::DispatchHandle(const
qpid::sys::IOHandle &, Callback, Callback, Callback)" is not a viable candidate.
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/posix/AsynchIO.cpp", line
168.20: 1540-0256 (I) A parameter of type "const qpid::sys::IOHandle &" cannot
be initialized with an expression of type "const qpid::sys::Socket".
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/posix/AsynchIO.cpp", line
306.5: 1540-0218 (S) The call does not match any parameter list for
"DispatchHandle::DispatchHandle".
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/DispatchHandle.h", line 88.24:
1540-1283 (I) "qpid::sys::DispatchHandle::DispatchHandle(const
qpid::sys::IOHandle &, Callback, Callback, Callback)" is not a viable candidate.
"/achinst/atk/qpid_build/qpidc-0.20/src/qpid/sys/posix/AsynchIO.cpp", line
306.20: 1540-0256 (I) A parameter of type "const qpid::sys::IOHandle &" cannot
be initialized with an expression of type "const qpid::sys::Socket".
So, DispatchHandle has a constructor:
QPID_COMMON_EXTERN DispatchHandle(const IOHandle& h, Callback rCb, Callback
wCb, Callback dCb);
which takes IOHandle& as the first parameter, however in AsynchIO, the
constructor is called with the qpid::sys::Socket e.g:
AsynchAcceptor::AsynchAcceptor(const Socket& s, AsynchAcceptor::Callback
callback) :
acceptedCallback(callback),
handle(s, boost::bind(&AsynchAcceptor::readable, this, _1), 0, 0),
socket(s)
(Member "handle" is of type DispatchHandle.)
The thing is, IOHandle and Socket are totally unrelated. For this to ever work,
Socket would need to extend IOHandle (or one of its derived classes). So the
question is, how does this compile anywhere? :)
Regards,
Ales