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

Chris Stylianou edited comment on THRIFT-1834 at 1/18/13 11:52 PM:
-------------------------------------------------------------------

Thanks for your explanation Ben, nice to see a repsonse that isn't just a one 
word answer :)

I understand at the moment it is very difficult to preserve interface/binary 
compatibility whilst development of the Thrift library itself progress towards 
the golden "1.0.0" version, however:

- I can't see why if we decide to stick to a particular Thrift milestone 
build/release (I.e.: 0.7, 0.8, 0.9, etc...) it can't be dynamically linked to 
the applications/libraries that are built against it.

- Surely the excuse for boost/STL does not hold. On most platforms these 
external libraries are almost always linked dynamically (In fact Microsoft 
recommend not to distribute applications that statically link to their 
libraries: 
http://msdn.microsoft.com/en-us/library/ms235316%28v=vs.110%29.aspx). I 
certainly link to boost everywhere else in my applications/libraries 
dynamically without any development issues.

- Would this current design decision to be packaged as a static library be 
reconsidered once Thrift reaches 1.0.0?

Also, I'm not sure I understand what you mean by 'Thrift is designed to be 
packaged as a static library'. What real advantages do we get from statically 
linking Thrift to our applications/libraries that we wouldn't get if we 
dynamically linked to them .

Sorry, I'm not trying to be awkward, I'm just trying to understand the 'whys' :)
                
      was (Author: chris5287):
    Thanks for your explanation Ben, nice to see a repsonse that isn't just a 
one word answer :)

I understand at the moment it is very difficult to preserve interface/binary 
compatibility whilst development of the Thrift library itself progress towards 
the golden "1.0.0" version, however:

- I can't see why if we decide to stick to a particular milestone build/release 
(I.e.: 0.7, 0.8, 0.9, etc...) these can't be dynamically linked between 
applications/libraries that make use of Thrift.

- Surely the excuse for boost/STL does not hold. On most platforms these 
external libraries are almost always linked dynamically (In fact Microsoft 
recommend not to distribute applications that statically link to their 
libraries: 
http://msdn.microsoft.com/en-us/library/ms235316%28v=vs.110%29.aspx). I 
certainly link to boost everywhere else in my applications/libraries 
dynamically without any development issues.

- Would this current design decision to be packaged as a static library be 
reconsidered once Thrift reaches 1.0.0?

Also, I'm not sure I understand what you mean by 'Thrift is designed to be 
packaged as a static library'. What real advantages do we get from statically 
linking Thrift to our applications/libraries that we wouldn't get if we 
dynamically linked to them .

Sorry, I'm not trying to be awkward, I'm just trying to understand the 'whys' :)
                  
> Unable to build C++ Thrift dynamic library on Windows
> -----------------------------------------------------
>
>                 Key: THRIFT-1834
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1834
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library
>    Affects Versions: 0.9
>         Environment: Windows x86_64 MSVC 2010
>            Reporter: Chris Stylianou
>              Labels: dll, msvc, thrift, windows
>
> I am unable to build a valid .dll version of the Thrift C++ library using 
> MSVC2010 as nothing has been declared with 
> "__declspec(dllexport)/__declspec(dllimport)", meaning that MSVC2010 (and 
> presumably all other versions) are unable to generate the import .lib that 
> should accompany the .dll library.

--
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

Reply via email to