qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aleš Trček <Ales.Tr...@halcom.si>
Subject Building qpid C++ broker on AIX
Date Tue, 28 May 2013 00:09:14 GMT
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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message