You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Steve Huston (JIRA)" <ji...@apache.org> on 2011/02/28 17:17:37 UTC

[jira] Commented: (QPID-2549) Port qpid to FreeBSD

    [ https://issues.apache.org/jira/browse/QPID-2549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13000370#comment-13000370 ] 

Steve Huston commented on QPID-2549:
------------------------------------

FYI, if anyone is still interested in this... I have reason to write a poll-based poller for Qpid (port to AIX), but lack funding for it. If someone can help fund it, the poll poller may do the trick for FreeBSD as well.

> Port qpid to FreeBSD
> --------------------
>
>                 Key: QPID-2549
>                 URL: https://issues.apache.org/jira/browse/QPID-2549
>             Project: Qpid
>          Issue Type: Improvement
>          Components: C++ Broker
>    Affects Versions: 0.6
>         Environment: FreeBSD 8-CURRENT on amd64 (64 bit)
> $ g++ -v
> Using built-in specs.
> Target: amd64-undermydesk-freebsd
> Configured with: FreeBSD/amd64 system compiler
> Thread model: posix
> gcc version 4.2.1 20070719  [FreeBSD]
> $ python -V
> Python 2.6.1
> $ pkg_info | grep boost
> boost-python-1.37.0 Free peer-reviewed portable C++ source libraries
> svn trunk version, checked out now (r765092)
> ./configure CPPFLAGS="-I/usr/local/include -L/usr/local/lib" LDFLAGS="-L/usr/local/lib" --with-poller=poll
>            Reporter: Andrew Stitcher
>              Labels: freebsd, porting
>
> For qpid to work on FreeBSD it needs a version of the low level Poller code that works there:
> [Comments from original reporter below]
> g++ -Werror -pedantic -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long -Wvolatile-register-var -Winvalid-pch -Wno-system-headers -Woverloaded-virtual -DMODULE_DIR=\"/usr/local/lib/qpid/daemon\" -DCONF_FILE=\"/usr/local/etc/qpidd.conf\" -g -O2 -o .libs/qpidd qpidd-qpidd.o posix/qpidd-QpiddBroker.o  -L/usr/local/lib -L/usr/lib/openais -L/usr/lib64/openais -L/usr/lib/corosync -L/usr/lib64/corosync ./.libs/libqpidbroker.so /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so ./.libs/libqpidcommon.so -lboost_program_options -lboost_filesystem -luuid -Wl,--rpath -Wl,/usr/local/lib
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `qpid::sys::Poller::interrupt(qpid::sys::PollerHandle&)'
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `typeinfo for qpid::sys::PollerHandle'
> ./.libs/libqpidbroker.so: undefined reference to `qpid::sys::Poller::shutdown()'
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `qpid::sys::PollerHandle::~PollerHandle()'
> ./.libs/libqpidbroker.so: undefined reference to `qpid::sys::Poller::Poller()'
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `qpid::sys::Poller::addFd(qpid::sys::PollerHandle&, qpid::sys::Poller::Direction)'
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `qpid::sys::Poller::delFd(qpid::sys::PollerHandle&)'
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `qpid::sys::PollerHandle::PollerHandle(qpid::sys::IOHandle const&)'
> /test/qpid/qpid/cpp/src/.libs/libqpidcommon.so: undefined reference to `qpid::sys::Poller::modFd(qpid::sys::PollerHandle&, qpid::sys::Poller::Direction)'
> I think it would be nice to have at least a standard select/poll interface. Going straight with (and only with) the specialised OS-dependent interfaces seem to be a bad idea for the poor people, not running Linux (or Solaris, or Windows, if they work correctly).
> BTW, shouldn't using libevent or libev would be more logical?
> [Comments from AStitcher:]
> There are two essential options here write a Poller using the kqueue which has very similar capability to the Linux epoll, or write a less functional (and probably performant) but far more portable version using the posix poll.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org