Steve Huston wrote:
Hi Paul,
Anyone successfully built c++ M3 (or M2...) on FreeBSD (v7)?
Not that I know of.
I've been
hacking at it (M3 from the source repository) for a day or so
since I need
the c++ client API on that platform. I've had some success
getting past
various compile and linking errors, but I'm stumped at this
point with this
one. Looks like it's related to the poll()/epoll() choice...
Exactly... The low-level I/O facility needs to be written/customized
for each platform so far. Linux uses epoll, Solaris uses ECF, Windows
uses IOCP. The job for FreeBSD would be (first) to look at how to do
this most effectively. If you need the client only, select() would be
least common denominator and could be added fairly easily.
You'd want to look at the Poller class and PollerHandle (and
DispatchHandle) for some background info.
The other potential problems are the things in the
qpid/cpp/src/qpid/sys/posix subdirectories - make sure that what was
done on Linux/Solaris is valid for FreeBSD as well - threads, timers,
etc. I expect that you won't find much trouble there.
Let us know how you make out.
Paul,
I would go from trunk, as the Windows, Solaris refactoring should help
you when hacking
for BSD. Shout if you need any help.
Carl.