libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Support for VC++ toolchain (was Re: Absolute paths generatedby libto


From: Benoit Sigoure
Subject: RE: Support for VC++ toolchain (was Re: Absolute paths generatedby libtool.)
Date: Tue, 28 Nov 2006 15:43:01 +0100
User-agent: Internet Messaging Program (IMP) H3 (4.0.2)

Quoting Duft Markus <address@hidden>:
Hi!

Hi, please answer below the quote :(
http://en.wikipedia.org/wiki/Top-posting


Hmmm, what do you mean with "wgcc doesn't set the environment"? It's
true, wgcc doesn't, but why should it?? The thing is, that wgcc should
be the only one to run cl.exe, and he knows how... Am i missing
something?

Could be, that wgcc doesn't work that good under cygwin yet, since the
primary platform is interix... ;o)

You can't run cl.exe unless you have the right environment variables set.
According to my install of Visual C++ Express (under C:\vcxx8) these are:

export VSINSTALLDIR='C:\vcxx8'
export VCINSTALLDIR='C:\vcxx8\VC'
export FrameworkDir='C:\WINDOWS\Microsoft.NET\Framework'
export FrameworkVersion='v2.0.50727'
export FrameworkSDKDir='C:\vcxx8\SDK\v2.0'
export DevEnvDir='C:\vcxx8\Common7\IDE'
export
PATH='C:\vcxx8\Common7\IDE;C:\vcxx8\VC\BIN;C:\vcxx8\Common7\Tools;C:\vcxx8\SDK\v2.0\bin;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\vcxx8\VC\VCPackages;c:\vcxx8\VC\PlatformSDK'
export INCLUDE='C:\vcxx8\VC\INCLUDE;c:\vcxx8\VC\PlatformSDK\Include;'
export LIB='C:\vcxx8\VC\LIB;C:\vcxx8\SDK\v2.0\lib;c:\vcxx8\VC\PlatformSDK\Lib;'
export LIBPATH='C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727'

Notice that in the above PATH and INCLUD and LIB, I added MS Platform SDK's
stuff.

The MS Platform SDK adds the following:
export MSSdk='c:\vcxx8\VC\PlatformSDK'
export Bkoffice='c:\vcxx8\VC\PlatformSDK'
export INETSDK='c:\vcxx8\VC\PlatformSDK'
export Mstools='c:\vcxx8\VC\PlatformSDK'


On interix wgcc does all the conversion from unix to windows. One can
work just as if using gcc under linux or elsewhere... And one *does not*
need to worry about environments or conversions or anything, *and*
libtool works just fine ;o)

So you're telling me that wgcc would transform a -I/home/build/include in
/IC:\cygwin\home\build\include ?

(by the way, I sent you an email a couple of days ago because I had a problem
with wgcc, did you receive it?)

Cheers,


Cheers, Markus

-----Original Message-----
From: address@hidden
[mailto:address@hidden On Behalf Of
Benoit Sigoure
Sent: Tuesday, November 28, 2006 2:14 PM
To: address@hidden
Subject: Re: Support for VC++ toolchain (was Re: Absolute paths
generatedby libtool.)

Quoting Howard Chu <address@hidden>:
Benoit Sigoure wrote:
Quoting Benoit Sigoure <address@hidden>:
[SNIP, see
http://lists.gnu.org/archive/html/libtool/2006-11/msg00018.html]


Hello folks,
I think I finally succeeded: I can now build any UNIX program as long

as its code is portable on Windows with both mingw-gcc toolchain and
MS VC++.

Wow, what a lot of effort, when you could have simply installed MSYS
and the cccl shell script. I guess you would still need to intercept
DOS-style commands like del and xcopy, but the MSYS shell takes care
of command line arguments and paths, and cccl takes care of
translating Unix cc options to switches that MSVC understands. With
these I can use an unmodified libtool script to build most autoconf'd
packages on Windows.


No sorry, this was necessary. MSYS isn't enough, and using it wouldn't
have enabled me to do what I do now. The shell still removes unecessary
backslashes and MSYS can't automagically handles things such as:
gcc -I/home/build/... (which needs to be rewritten in
-IC:/cygwin/home/build/...) for instance.
cccl helps but is rather incomplete compared to wgcc. Moreover, neither
wgcc nor cccl set the proper environment variables to be able to run
cl.exe (which returns 53 if any of them is wrong, eg if the PATH isn't
;-separated or contains forward slashes instead of backslashes etc...)
and to use MS PlateformSDK.




--
SIGOURE Benoit aka Tsuna
  _____
 /EPITA\ Promo 2008, LRDE





reply via email to

[Prev in Thread] Current Thread [Next in Thread]