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

Alan Conway commented on QPID-3163:
-----------------------------------

Resolved by QPID-5079.

> Define public/private library symbols with gcc
> ----------------------------------------------
>
>                 Key: QPID-3163
>                 URL: https://issues.apache.org/jira/browse/QPID-3163
>             Project: Qpid
>          Issue Type: Improvement
>          Components: C++ Client
>    Affects Versions: 0.11
>            Reporter: Alan Conway
>            Assignee: Alan Conway
>            Priority: Minor
>
> Currently qpid libraries built with gcc export all symbols, public and 
> private. This makes it difficult to define the public interface of our 
> libraries and to create automated tools that can  verify compatibility 
> between library versions or detect incompatible changes.
> gcc provides a flag flag to make symbols hidden by default 
> (--fvisibility=hidden), and the qpid source code already has macros to mark 
> public functions, the FOO_EXTERN macros defined to support exporting the 
> public API on Windows. By suitably defining these macros for gcc we can 
> control the symbols exported by our libraries. 
> For more details:
> http://gcc.gnu.org/wiki/Visibility
> http://gcc.gnu.org/faq.html#dso



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to