You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Alan Conway <ac...@redhat.com> on 2011/07/28 20:37:50 UTC
Enabling --visibility=hidden for the C++ build.
I've been fiddling with this on and off for a while. I think it's mostly done
but I'm stuck, would appreciate any fresh insights:
See
https://issues.apache.org/jira/browse/QPID-3163?focusedCommentId=13072475#comment-13072475
---
Work to date is on branch https://svn.apache.org/repos/asf/qpid/branches/qpid-3163.
The bulk of the extern declarations etc. are in place, however I'm stuck on a
run time failure. The boost::any code, used by boost::program_options, used by
qpid/Options, does a typeinfo comparison which fails due to multiple typeinfo
symbols for std::string. (See http://gcc.gnu.org/wiki/Visibility).
One (impractical) solution that I have verified is to wrap every #include
<string> like this
#pragma GCC visibility push(default)
#include <string>
#pragma GCC visibility pop
This includes occurences in system header files! Clearly not practical.
Another solution would be to re-write qpid::Options to avoid boost::options.
There are further issues to resolve after getting past this one, not clear how
many although I think we're nearly there.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org