Building cpan module that links with proprietary libs

Andrew DeFaria Andrew@DeFaria.com
Fri May 30 22:06:00 GMT 2014


On 5/30/2014 1:01 AM, Csaba Raduly wrote:
> On Fri, May 30, 2014 at 4:36 AM, Andrew DeFaria  wrote:
>> On 5/29/2014 6:42 PM, Larry Hall (Cygwin) wrote:
>>> As a
>>> result, you will never get code compiled with g++ to link with these
>>> libraries.  There is no common ABI among C++ compilers.  Thus, the
>>> libraries
>>> and headers of one can't be used as input to the compiler of another, even
>>> on the same platform.  This only works for C code.  So you have to either
>>> build the proprietary libs with Cygwin's C++ compiler or write your own
>>> "shim" library that wraps the necessary calls and objects in a C API,
>>> compile that with VS, and link your program against the APIs in your
>>> library.
>
> @Larry: Would this work? I think MSVC produces obj and lib files in
> COFF; can Cygwin's toolchain understand that?
>
>>
>> Being as this code is proprietary I doubt that Perforce will release it to
>> me to compile but I will point them at this thread...'
>
> Maybe you can convince them to build a Cygwin version (not very likely).

I am in contact with Perforce about this. They think it's a wonderful 
idea and they fully want me to let them know when I've managed to 
accomplish this! ;-)

Needless to say, Cygwin, it's Perl and having a P4Perl available for it 
is not necessarily in Perforce's business model. Most people just use 
ActiveState. That said, with 5.18 I hear the backend moves to gcc and 
they need to address that issue. Once addressed having a Cygwin version 
may be easier for them to produce.

I, unfortunately, do not have a lot of time to dedicate to this as my 
client wants me to work on others things. Using Cygwin's Perl is a 
convenience for me but not a necessity, though I would love to have this 
working.
-- 
Andrew DeFaria
http://defaria.com


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list