Mail Archives: cygwin/2010/01/01/08:48:29
On 1/1/2010 20:37, JonY wrote:
> On 1/1/2010 20:06, Neil DOT Mowbray AT calgacus DOT com wrote:
>> Folks,
>>
>> A bit of a vague question but any greater clarity concerning the
>> appropriate
>> level of interoperability between Cygwin and MS would be appreciated.
>>
>> I have my Windows 6 and 7 platforms configured to build software using
>> different toolchains, the most common being (1) Visual Studio 10 and (2)
>> Cygwin with gcc-4.
>>
>> When using the Visual Studio toolchain I will prefer a cygwin tool over a
>> MS tool, so for example, I always use bash and gnu make and never use the
>> cmd shell/power shell or nmake. Taking this further, I will try to use
>> nm over dumpbin and ar over lib.
>>
>> For the most part the cygwin tools interoperate with MS artifacts but
>> it does break down, especially, with 64bit artifacts. For example, nm
>> can work with 32bit object files created by MS cl.exe but it cannot
>> work with 64bit MS object files (unrecognised file format).
>>
>> The question is: how far should I expect the interoperability to go?
>> For example, is the fact that nm cannot handle 64bit MS object files
>> a (1) defeat in cygwin/nm or (2) I should be grateful that it works
>> with 32bit files and otherwise lower my expectation?
>>
>> I suppose at its core the question is about the intent of cygwin. Is
>> it (1) to provide unix like capabilities to a MS platform (in which case
>> one would expect/demand a high degree of interoperability), or
>> (2) to provide a unix like island inside a MS platform?
>>
>> The problem with (2) is one cannot really stay isolated from the
>> host MS environment.
>>
>> My previous question of how/if one can use cyginw *.h *.dll *.a
>> artifacts in a MS compiled program is essentaily the same theme
>> although I have lower expectations that it is possible.
>>
>> Any pointers?
>
> Hi,
>
> for nm to recognize 64bit objects, you need to rebuild binutils to
> recognize 64bit objects. Use
> --enable-target=i686-pc-cygwin,x86_64-w64-mingw32 with binutils
> configure. Beware that MSVC now uses the "short" library format instead
> of the older "long" library format used by the GNU toolchain.
>
Correction:
I mean ".obj" object file format, not the ".lib" library format. The
latter stays mostly the same.
--
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
- Raw text -