Chuck Rolke created QPID-5100:
---------------------------------
Summary: C++ Broker windows build exports amqp library classes in
qpidcommon dll
Key: QPID-5100
URL: https://issues.apache.org/jira/browse/QPID-5100
Project: Qpid
Issue Type: Bug
Components: C++ Broker
Affects Versions: 0.22
Environment: Windows build
Reporter: Chuck Rolke
Assignee: Chuck Rolke
The symbol export mechanism for the ampq library has an issue whereby all the
exported symbols for amqp.dll are linked into qpidcommon.dll and exported from
there.
To expose all the exports use:
{noformat}
cd qpid/cpp
find . -name "*.h" | xargs grep _EXTERN
{noformat}
The *_EXTERN then indicates for each symbol which export library the symbol
originates. The symbols in question are all the ./amqp/ symbols pegged with the
QPID_COMMON_EXTERN. For example:
{noformat}
./amqp/Decoder.h: QPID_COMMON_EXTERN Decoder(const char*, size_t);
./amqp/Decoder.h: QPID_COMMON_EXTERN CharSequence readSequence8();
./amqp/Decoder.h: QPID_COMMON_EXTERN CharSequence readSequence32();
{noformat}
The fix for this problem is to copy one of the ImportExport.h pattern files and
make it work for compiler symbol amqp_EXPORTS. Then change all the
QPID_COMMON_EXPORTS in /amqp/*.h to QPID_AMQP_EXPORTS.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]