On 02/04/2012, Romain Bardou <bar...
> Le 30/03/2012 16:15, Jonathan Protzenko a écrit :
>> Hi again,
>> Following all the good suggestions in this thread, I've updated the
>> installer. It now downloads and runs cygwin's setup.exe so as to provide
>> a fully working environment for OCaml on windows after the installer
>> completes. The cygwin installer runs in silent mode, that is, the
>> progress window shows up, but there is no user prompt.
> I always heard that if you compile your program under the Cygwin
> environment, then the application needs to be run under the Cygwin
> environment as well; whereas if you use MinGW, you produce stand-alone
> executables. Is that still the case?
> I need to give stand-alone executables to my users; I cannot tell them
> to install Cygwin as well. If your installer does not let me compile
> stand-alone executables, it has no value to me.
Others have already pointed out that it wasn't necessarily the case.
If you call "gcc" from cygwin, you'll end up with cygwin binaries but
you can very simply cross-compile.
Cygwin provides a POSIX environment that can also run windows stuff
and does some translation between the two but if you cross-compile,
you can target whatever you want and that includes "pure" windows.
Also, note that msys, which is often used when cygwin isn't, is
similar to cygwin (and it's a "light" fork of cygwin), also requires
you to provide a specific library and changes the behaviour of the
application. However, you should absolutely never ever build anything
msys (msys is also a target for gcc, which has never been merged and
is from gcc 2.95 or 2.96).
With x-compilation, you can do what you want:
- need full POSIX? cygwin
- need some POSIX? msys (maybe)
- need some POSIX but not a lot? a library on top of win32, or move
away from posix directly
By the way, there was a netbsd-derived environment named Interix which
microsoft used to advise. Windows 8's documentation now advises users
of Interix to use cygwin or mingw(-w64).
Caml-list mailing list. Subscription management and archives:
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs