From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id E9CD881793 for ; Mon, 24 Jun 2013 14:11:00 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of mmatalka@gmail.com) identity=pra; client-ip=74.125.82.175; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mmatalka@gmail.com"; x-sender="mmatalka@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of mmatalka@gmail.com designates 74.125.82.175 as permitted sender) identity=mailfrom; client-ip=74.125.82.175; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mmatalka@gmail.com"; x-sender="mmatalka@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-we0-f175.google.com) identity=helo; client-ip=74.125.82.175; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mmatalka@gmail.com"; x-sender="postmaster@mail-we0-f175.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AtwBAPE2yFFKfVKvjWdsb2JhbABbgzpJrRSJZ4g7dggWDgEBAQEHCwsJEgYkgiMBAQQBQAEbEgsBAwELBgULDQ0aByEBAREBBQEKAQMBDQYTCAoCBodhAQMJBgycMIxNgn+ECAoZJwMKWId0AQUMjFyCYwQHg2MDk3GBa4FngSmKd4M/FimEUiA X-IPAS-Result: AtwBAPE2yFFKfVKvjWdsb2JhbABbgzpJrRSJZ4g7dggWDgEBAQEHCwsJEgYkgiMBAQQBQAEbEgsBAwELBgULDQ0aByEBAREBBQEKAQMBDQYTCAoCBodhAQMJBgycMIxNgn+ECAoZJwMKWId0AQUMjFyCYwQHg2MDk3GBa4FngSmKd4M/FimEUiA X-IronPort-AV: E=Sophos;i="4.87,928,1363129200"; d="scan'208";a="23099099" Received: from mail-we0-f175.google.com ([74.125.82.175]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 24 Jun 2013 14:11:00 +0200 Received: by mail-we0-f175.google.com with SMTP id t59so8275282wes.34 for ; Mon, 24 Jun 2013 05:11:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=I1blbtoBldUsHKCfR9bdax9xumAXtclYHKn1crT3cyg=; b=n/8kz4W+HaCNUZvEIVwfkydio96xY86HlnStvvWbajGEBroHpikCrMSjsB0PaeWGdj 43YY+mmBKOgGrKib6kkdoR1W7CQRlhY4HIMiQxHwwvV8zGTOJ3pOXGAMw+UTwg0d19x5 M66SYWAXyB2gL1S08j+PsDy9qn9cEB4eeO5V0c6ra152i2OQAagmKYiuym0n6QaobdYt rwRWMP6Ce9svRAz+VkQEDa0v1FUx9JFRsNkjyOXsckrhVoi+aTdbs7pbnzQtXXFsR9V6 DolrJty1sFua02ka7m9L+gPBbyPKw/aijX62R6i6jHQs9FtW2N8+7gxNIKGezsVDUVvy Kvfw== MIME-Version: 1.0 X-Received: by 10.180.188.36 with SMTP id fx4mr2886969wic.55.1372075859933; Mon, 24 Jun 2013 05:10:59 -0700 (PDT) Received: by 10.194.44.33 with HTTP; Mon, 24 Jun 2013 05:10:59 -0700 (PDT) Received: by 10.194.44.33 with HTTP; Mon, 24 Jun 2013 05:10:59 -0700 (PDT) In-Reply-To: <51C81B39.8040400@gmail.com> References: <51C81B39.8040400@gmail.com> Date: Mon, 24 Jun 2013 08:10:59 -0400 Message-ID: From: Malcolm Matalka To: Jonathan Protzenko Cc: caml-list , Bikal Gurung , David Allsopp Content-Type: multipart/alternative; boundary=001a11c25cd83c813d04dfe54ec5 Subject: Re: [Caml-list] Ocaml on windows --001a11c25cd83c813d04dfe54ec5 Content-Type: text/plain; charset=ISO-8859-1 Out of curiosity: why not opt for F#? On Jun 24, 2013 12:11 PM, "Jonathan Protzenko" wrote: > On Mon 24 Jun 2013 12:01:06 PM CEST, Bikal Gurung wrote: > > Hi David, > > > > Thank you for your response. I have installed the official windows > > port of ocaml at http://protz.github.io/ocaml-installer/ . However, it > > mentions that MinGW/Msys is no longer supported. I rather use > > Mingw/Msys as well. > There are quite a few things that make working with msys painful, which > is the reason why I switched the installer to cygwin. The installer > still is a 32-bit native windows program, and still generates 32-bit > native windows programs. It's just that cygwin is an easy way to get a > toolchain and a unix-like development environment, which ocaml kind of > needs in order to work right (without it, you only get bytecode > compilation). > - The main problem is that OCaml is, by default, configured to search > executables from the toolchain with the i686-pc-mingw-whatever prefix, > that is, the one that the mingw-w64 compilers have, when installed > through cygwin. > - The second biggest problem is with flexdll which, IIRC, hardcodes the > use of the mingw-w64 compilers (32-bit compilers from the mingw-w64 > project). Msys, on the other hand, uses the mingw compilers (the > original mingw project), and the location of the libraries / > executables is slightly different, or maybe flexdll doesn't auto-detect > the right locations for crt2.o and friends, meaning it's painful as you > have to manually export FLEXLINKFLAGS. At some point, it became almost > impossible to have that combination working. I think flexdll started to > hardcode the i686-pc-mingw prefix at some point, and there's no > ready-made, easy to install mingw-w64/msys bundle available, as far as > I know. > - OCamlbuild relies on bash being available in the path to run its > external commands ; an easy way to have this is to have a cygwin > development environment. This is a know issue that no one has stepped > up to fix on windows. > - Finally, the quoting conventions, IIRC, are subtly different between > mingw/msys and cygwin, and OCaml is tailored to cygwin. > > For all these reasons, cygwin sounds like a better choice for you > working environment on windows. But I believe msys is still possible. > If there's something that prevents you from having it work properly, I > think we (the team) would be happy to know about it. > > Cheers, > > jonathan > > > > It seems ocamlbuild requires cygwin to work, has this been your > > experience too? If I build the latest ocaml from trunk - 4.02dev+fp > > will ocaml and other tools/utilities still work on pure MingWg/Msys > > environment? > > > > With regards to ocaml libraries, have you tried the Jane Street > > packages? Core, core_kernel ? > > > > Bikal Gurung > > > > > > On 24 June 2013 10:27, David Allsopp > > wrote: > > > > Bikal Gurung wrote: > > > I am looking to use ocaml to implement a project for my > > employer. However, > > > the environment is Windows OS. I am using cygwin and so far it > > seems to > > > work but curious on experiences others have on using ocaml on > > windows - > > > both as a development and deployment platform. Also has anyone > > tried using > > > opam on windows? Does it work? > > > > I've used the MinGW Windows port of OCaml for nearly a decade. > > Deployment of programs is the same as deploying anything else on > > Windows - deploying using executables built with ocamlopt is of > > course trivial as they have no dependencies beyond any libraries > > you choose to use. > > > > Partly because of how long I've used OCaml, I still build it from > > sources - but there are now several options including the packaged > > Windows installer, GODI/WODI, etc. Although Windows OCaml users > > are a minority, there are quite a few developers actively > > contributing (the recent 64-bit MinGW port was > > community-initiated, I think). > > > > Last time I looked, Windows support for opam appeared to be a todo > > list item, but I haven't looked in a while (laziness... I already > > have parallel build scripts of my own, so a package manager is > > lower down my priority list) > > > > HTH, > > > > > > David > > > > > > -- > Caml-list mailing list. Subscription management and archives: > https://sympa.inria.fr/sympa/arc/caml-list > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs > --001a11c25cd83c813d04dfe54ec5 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

Out of curiosity: why not opt for F#?

On Jun 24, 2013 12:11 PM, "Jonathan Protzen= ko" <jonathan.protz= enko@gmail.com> wrote:
On Mon 24 Jun 2013 12:01:06 PM CEST, Bikal Gurung wrote:
> Hi David,
>
> Thank you for your response. I have installed the official windows
> port of ocaml at http://protz.github.io/ocaml-installer/ . However, it<= br> > mentions that MinGW/Msys is no longer supported. I rather use
> Mingw/Msys as well.
There are quite a few things that make working with msys painful, which
is the reason why I switched the installer to cygwin. The installer
still is a 32-bit native windows program, and still generates 32-bit
native windows programs. It's just that cygwin is an easy way to get a<= br> toolchain and a unix-like development environment, which ocaml kind of
needs in order to work right (without it, you only get bytecode
compilation).
- The main problem is that OCaml is, by default, configured to search
executables from the toolchain with the i686-pc-mingw-whatever prefix,
that is, the one that the mingw-w64 compilers have, when installed
through cygwin.
- The second biggest problem is with flexdll which, IIRC, hardcodes the
use of the mingw-w64 compilers (32-bit compilers from the mingw-w64
project). Msys, on the other hand, uses the mingw compilers (the
original mingw project), and the location of the libraries /
executables is slightly different, or maybe flexdll doesn't auto-detect=
the right locations for crt2.o and friends, meaning it's painful as you=
have to manually export FLEXLINKFLAGS. At some point, it became almost
impossible to have that combination working. I think flexdll started to
hardcode the i686-pc-mingw prefix at some point, and there's no
ready-made, easy to install mingw-w64/msys bundle available, as far as
I know.
- OCamlbuild relies on bash being available in the path to run its
external commands ; an easy way to have this is to have a cygwin
development environment. This is a know issue that no one has stepped
up to fix on windows.
- Finally, the quoting conventions, IIRC, are subtly different between
mingw/msys and cygwin, and OCaml is tailored to cygwin.

For all these reasons, cygwin sounds like a better choice for you
working environment on windows. But I believe msys is still possible.
If there's something that prevents you from having it work properly, I<= br> think we (the team) would be happy to know about it.

Cheers,

jonathan
>
> It seems ocamlbuild requires cygwin to work, has this been your
> experience too? If I build the latest ocaml from trunk - 4.02dev+fp
> will ocaml and other tools/utilities still work on pure MingWg/Msys
> environment?
>
> With regards to ocaml libraries, have you tried the Jane Street
> packages? Core, core_kernel ?
>
> Bikal Gurung
>
>
> On 24 June 2013 10:27, David Allsopp <dra-news@metastack.com
> <mailto:dra-news@metastac= k.com>> wrote:
>
> =A0 =A0 Bikal Gurung wrote:
> =A0 =A0 > I am looking to use ocaml to implement a project for my > =A0 =A0 employer. However,
> =A0 =A0 > the environment is Windows OS. I am using cygwin and so f= ar it
> =A0 =A0 seems to
> =A0 =A0 > work but curious on experiences others have on using ocam= l on
> =A0 =A0 windows -
> =A0 =A0 > both as a development and deployment platform. Also has a= nyone
> =A0 =A0 tried using
> =A0 =A0 > opam on windows? Does it work?
>
> =A0 =A0 I've used the MinGW Windows port of OCaml for nearly a dec= ade.
> =A0 =A0 Deployment of programs is the same as deploying anything else = on
> =A0 =A0 Windows - deploying using executables built with ocamlopt is o= f
> =A0 =A0 course trivial as they have no dependencies beyond any librari= es
> =A0 =A0 you choose to use.
>
> =A0 =A0 Partly because of how long I've used OCaml, I still build = it from
> =A0 =A0 sources - but there are now several options including the pack= aged
> =A0 =A0 Windows installer, GODI/WODI, etc. Although Windows OCaml user= s
> =A0 =A0 are a minority, there are quite a few developers actively
> =A0 =A0 contributing (the recent 64-bit MinGW port was
> =A0 =A0 community-initiated, I think).
>
> =A0 =A0 Last time I looked, Windows support for opam appeared to be a = todo
> =A0 =A0 list item, but I haven't looked in a while (laziness... I = already
> =A0 =A0 have parallel build scripts of my own, so a package manager is=
> =A0 =A0 lower down my priority list)
>
> =A0 =A0 HTH,
>
>
> =A0 =A0 David
>
>

--
Caml-list mailing list. =A0Subscription management and archives:
ht= tps://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs
--001a11c25cd83c813d04dfe54ec5--