Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
* [Caml-list] ANN: msvs-tools
@ 2016-02-23 13:50 David Allsopp
  0 siblings, 0 replies; only message in thread
From: David Allsopp @ 2016-02-23 13:50 UTC (permalink / raw)
  To: OCaml List

Of potential interest to Windows OCaml users, I'm pleased to announce a
preliminary release of "msvs-tools", a collection of scripts (at the moment
only 2) for aiding the use of the Microsoft C Compiler with OCaml. GitHub
repo at https://github.com/metastack/msvs-tools.

msvs-detect searches for Visual Studio and Windows SDKs for compilers
matching a set of criteria. Its intended use is for configure scripts, where
it can be used to remove the requirement for the user to set-up PATH, LIB
and INCLUDE prior to launching Cygwin, or to find pairs of x86 and x64 C
compilers.

msvs-promote-path provides one solution to the conflict between Microsoft's
Linker (link.exe) and coreutils link (/usr/bin/link) in Cygwin by performing
a little PATH munging so you don't have to.

msvs-detect will hopefully be heading into FlexDLL (to replace an earlier
more limited version called findwinsdk) and also into OPAM-on-Windows (which
always needs pairs of compilers for x64 and x86). msvs-promote-path will
hopefully head into OCaml itself, but it'd be helpful even at this stage to
know if it works correctly on your system so, if you're using a Windows
system that has at least one Microsoft C Compiler installed and Cygwin, then
you should be able to launch a Visual Studio Command Prompt (or Windows SDK
Command Prompt) and from that run:

C:\cygwin\bin\mintty -

(adjusted as necessary, if you installed Cygwin elsewhere) and then from
bash: 

  $ link | head -1
  link: missing operand
  Try `link --help' for more information.
  $ eval $(./msvs-promote-path)
  /cygdrive/c/Program Files (x86)/Microsoft Visual Studio 9.0/VC/Bin/amd64
moved to the front of $PATH
  $ link | head -1
  Microsoft (R) Incremental Linker Version 9.00.21022.08
  $ ./msvs-detect --all
  Identified Environment C compiler as SDK6.1-x64
  Installed and usable packages:
    SDK5.2-x64
    SDK6.1-x64
    SDK6.1-x86
    SDK7.0-x64
    SDK7.0-x86
    SDK7.1-x64
    SDK7.1-x86
    VS10.0-x64
    VS10.0-x86
    VS11.0-x64
    VS11.0-x86
    VS12.0-x64
    VS12.0-x86
    VS14.0-x64
    VS14.0-x86
    VS7.0-x86
    VS7.1-x86
    VS8.0-x64
    VS8.0-x86
    VS9.0-x64
    VS9.0-x86

Obviously the output will depend on exactly what you have installed and,
yes, the test system I'm working on actually has every version of Visual
Studio and the Windows SDK simultaneously installed; thank you Microsoft for
keeping all those demo ISOs on your website and for the MSDN Academic
Alliance/e-Academy which provided me with free copies of VS .NET 2002 and
2003 a veeery long time ago.

Any feedback - especially if it doesn't work - much appreciated.


David


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-02-23 13:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-23 13:50 [Caml-list] ANN: msvs-tools David Allsopp

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox