caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] OCaml installer on Windows no longer installs MinGW?
@ 2013-07-15 12:11 Romain Bardou
  2013-07-15 12:21 ` David Allsopp
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Romain Bardou @ 2013-07-15 12:11 UTC (permalink / raw)
  To: caml-list

Hello,

I just installed OCaml from http://protz.github.io/ocaml-installer/ on a
fresh Windows 7 32bit installation, in VirtualBox, and run into several
problems.

During OCaml installation...

- It failed to download Tcl/Tk but I don't care about Tcl/Tk so I continued.

During Cryptokit compilation...

- The configure step returned no error although it should have (see below).

- It failed to compile because it could not find i686-w64-mingw32-gcc.
  Apparently it was not installed by the OCaml installer.

- I found no way to specify the GCC executable name during the "setup.ml
-configure" step. Can OASIS handle this?

- I installed the Cygwin packages mingw64-i686-gcc and
mingw64-i686-headers myself.
  Then, compiling Cryptokit failed: ocamlmklib raised End_of_file while
trying to read libmoldname.a, which happens to be 8 bytes long.

I have absolutely no clue what to do now. Is the installer from
protz.github deprecated?

Thanks,

-- 
Romain Bardou

^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 12:11 [Caml-list] OCaml installer on Windows no longer installs MinGW? Romain Bardou
@ 2013-07-15 12:21 ` David Allsopp
  2013-07-15 12:22 ` Matthieu Dubuget
       [not found] ` <51E3E975.7020708@gmail.com>
  2 siblings, 0 replies; 9+ messages in thread
From: David Allsopp @ 2013-07-15 12:21 UTC (permalink / raw)
  To: caml-list

Romain Bardou wrote:
> I just installed OCaml from http://protz.github.io/ocaml-installer/ on a
> fresh Windows 7 32bit installation, in VirtualBox, and run into several
> problems.

I haven't yet got around to trying this installer out, though I think it is being actively maintained.

However...

> During Cryptokit compilation...
> 
> - The configure step returned no error although it should have (see
> below).
> 
> - It failed to compile because it could not find i686-w64-mingw32-gcc.
>   Apparently it was not installed by the OCaml installer.
> 
> - I found no way to specify the GCC executable name during the "setup.ml -
> configure" step. Can OASIS handle this?

If correctly configured, you shouldn't need to do this - OCaml itself should know it. I believe that OASIS compiles .c files the "correct" way (i.e. using ocamlopt which itself calls the correct gcc).

> - I installed the Cygwin packages mingw64-i686-gcc and mingw64-i686-
> headers myself.
>   Then, compiling Cryptokit failed: ocamlmklib raised End_of_file while
> trying to read libmoldname.a, which happens to be 8 bytes long.

I don't think it's related, but I use the following patch for Cryptokit (based on info from Sylvain):

diff -Naur cryptokit-1.7/myocamlbuild.ml cryptokit-1.7/myocamlbuild.ml
--- cryptokit-1.7/myocamlbuild.ml	2011-06-23 18:57:04.000000000 +0100
+++ cryptokit-1.7/myocamlbuild.ml	2011-08-12 16:01:55.867588300 +0100
@@ -473,7 +473,7 @@
             [
                (OASISExpr.EBool true, S []);
                (OASISExpr.EFlag "zlib",
-                 S [A "-ccopt"; A "-O"; A "-ccopt"; A "-DHAVE_ZLIB"])
+                 S [A "-ccopt"; A "-O"; A "-ccopt"; A "-DHAVE_ZLIB"; A "-ccopt"; A "-LC:/Dev/OCaml/lib"])
             ]);
           (["oasis_library_cryptokit_cclib"; "link"],
             [
@@ -483,7 +483,7 @@
           (["oasis_library_cryptokit_cclib"; "ocamlmklib"; "c"],
             [
                (OASISExpr.EBool true, S []);
-               (OASISExpr.EFlag "zlib", S [A "-lz"])
+               (OASISExpr.EFlag "zlib", S [A "-LC:/Dev/OCaml/lib"; A "-lz"])
             ])
        ];
      }

But that's simply to pass a link directory for zlib. With that patch, I have no problems running:

ocaml setup.ml -configure --enable-zlib
ocaml setup.ml -build
ocaml setup.ml -doc
ocaml setup.ml -install

And it does seem to work.

HTH,


David

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 12:11 [Caml-list] OCaml installer on Windows no longer installs MinGW? Romain Bardou
  2013-07-15 12:21 ` David Allsopp
@ 2013-07-15 12:22 ` Matthieu Dubuget
  2013-07-15 12:37   ` Romain Bardou
       [not found] ` <51E3E975.7020708@gmail.com>
  2 siblings, 1 reply; 9+ messages in thread
From: Matthieu Dubuget @ 2013-07-15 12:22 UTC (permalink / raw)
  To: caml-list

Le 15/07/2013 14:11, Romain Bardou a écrit :
> …
>
> - It failed to download Tcl/Tk but I don't care about Tcl/Tk so I continued.

Just install Tcl/Tk yourself. It works. (see 
https://github.com/protz/ocaml-installer/issues/19)

>
> During Cryptokit compilation...
>
> - The configure step returned no error although it should have (see below).
>
> - It failed to compile because it could not find i686-w64-mingw32-gcc.
>    Apparently it was not installed by the OCaml installer.
>
> - I found no way to specify the GCC executable name during the "setup.ml
> -configure" step. Can OASIS handle this?
>
> - I installed the Cygwin packages mingw64-i686-gcc and
> mingw64-i686-headers myself.
>    Then, compiling Cryptokit failed: ocamlmklib raised End_of_file while
> trying to read libmoldname.a, which happens to be 8 bytes long.?

Uptate flexlink (see https://github.com/protz/ocaml-installer/issues/22)
Just copying flexdll_mingw.o, flexlink.exe and flexdll_initer_mingw.o 
from the last binary zip distributed by Alain Frish is enough 
(http://alain.frisch.fr/flexdll.html)

>
> I have absolutely no clue what to do now. Is the installer from
> protz.github deprecated?
Well. I would say it is a little outdated. It should just be slightly 
adapted and recompiled.

Salutations

-- 
Matthieu Dubuget
or Ttamttam

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 12:22 ` Matthieu Dubuget
@ 2013-07-15 12:37   ` Romain Bardou
  2013-07-15 12:42     ` Matthieu Dubuget
  0 siblings, 1 reply; 9+ messages in thread
From: Romain Bardou @ 2013-07-15 12:37 UTC (permalink / raw)
  To: matthieu.dubuget; +Cc: caml-list

> Uptate flexlink (see https://github.com/protz/ocaml-installer/issues/22)
> Just copying flexdll_mingw.o, flexlink.exe and flexdll_initer_mingw.o
> from the last binary zip distributed by Alain Frish is enough
> (http://alain.frisch.fr/flexdll.html)

Thank you (that was quick!), it compiles now.

I’m still not sure why MinGW GCC was not installed, but I think it is
the Cygwin installer which is the cause (it has always been rather buggy
in my experience).

Cheers,

-- 
Romain Bardou

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
       [not found] ` <51E3E975.7020708@gmail.com>
@ 2013-07-15 12:39   ` Matthieu Dubuget
  2013-07-15 14:16     ` Romain Bardou
  0 siblings, 1 reply; 9+ messages in thread
From: Matthieu Dubuget @ 2013-07-15 12:39 UTC (permalink / raw)
  To: caml-list; +Cc: Romain Bardou

[-- Attachment #1: Type: text/plain, Size: 782 bytes --]

Le 15/07/2013 14:22, Matthieu Dubuget a écrit :
> Le 15/07/2013 14:11, Romain Bardou a écrit :
>
>>
>> I have absolutely no clue what to do now. Is the installer from
>> protz.github deprecated?
> Well. I would say it is a little outdated. It should just be slightly 
> adapted and recompiled.
>

I must admit that using OCaml on windows with mingw flavour is not 
actually a click and work experience…

And most of the time, the packages are to be adapted in order to compile.

I also hit another problem, that you should be aware of:

on my installation, *i686-w64-mingw32-gcc -o toto ...* produces 
*toto.exe* instead of *toto*.
But flexlink has asked for *toto*, and never sees *toto.exe*, which 
leads to a compilation failure.

Salutations

--
Matthieu Dubuget
or Ttamttam




[-- Attachment #2: Type: text/html, Size: 1421 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 12:37   ` Romain Bardou
@ 2013-07-15 12:42     ` Matthieu Dubuget
  0 siblings, 0 replies; 9+ messages in thread
From: Matthieu Dubuget @ 2013-07-15 12:42 UTC (permalink / raw)
  To: Romain Bardou; +Cc: caml-list

Le 15/07/2013 14:37, Romain Bardou a écrit :
> I’m still not sure why MinGW GCC was not installed, but I think it is
> the Cygwin installer which is the cause (it has always been rather buggy
> in my experience).
You're right. Now I remember that. I could not have cygwin installed by 
ocaml installer.
I did it myself, using the command line found in ocaml installer (with 
some more packages I want added :-) ),
and I also had to modify the rights for the files of the cygwin directory.
(I usually work as a normal user, not with Administrator rights)

Salutations

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 12:39   ` Matthieu Dubuget
@ 2013-07-15 14:16     ` Romain Bardou
  2013-07-15 15:34       ` Jonathan Protzenko
  0 siblings, 1 reply; 9+ messages in thread
From: Romain Bardou @ 2013-07-15 14:16 UTC (permalink / raw)
  To: matthieu.dubuget; +Cc: caml-list

Le 15/07/2013 14:39, Matthieu Dubuget a écrit :
> Le 15/07/2013 14:22, Matthieu Dubuget a écrit :
>> Le 15/07/2013 14:11, Romain Bardou a écrit :
>>
>>>
>>> I have absolutely no clue what to do now. Is the installer from
>>> protz.github deprecated?
>> Well. I would say it is a little outdated. It should just be slightly
>> adapted and recompiled.
>>
> 
> I must admit that using OCaml on windows with mingw flavour is not
> actually a click and work experience…
> 
> And most of the time, the packages are to be adapted in order to compile.
> 
> I also hit another problem, that you should be aware of:
> 
> on my installation, *i686-w64-mingw32-gcc -o toto ...* produces
> *toto.exe* instead of *toto*.
> But flexlink has asked for *toto*, and never sees *toto.exe*, which
> leads to a compilation failure.

Interesting. I managed to compile Cryptokit, LablGTK (this one took me a
while…) and an application which uses both of them, without the error
you describe.

Thanks and cheers,

-- 
Romain Bardou

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 14:16     ` Romain Bardou
@ 2013-07-15 15:34       ` Jonathan Protzenko
  2013-07-15 15:59         ` Romain Bardou
  0 siblings, 1 reply; 9+ messages in thread
From: Jonathan Protzenko @ 2013-07-15 15:34 UTC (permalink / raw)
  To: Romain Bardou; +Cc: caml-list, matthieu.dubuget

Hi,

The installer is indeed maintained, but it is slightly outdated. I 
asked the people from Tcl/Tk to provide a "stable" URL, e.g. 
installer-w32-threads-latest.exe, but they could not do it, and hosting 
a copy of the installer myself would be a breach of license, so 
unfortunately, the installer will keep breaking at regular intervals 
because of that. (I guess I could get away with a php script on my 
homepage that emits a Location: header, so that I just have to modify a 
script and not regenerate the installer whenever the URL for the latest 
stable version of tcl/tk changes, but that's more hackish than I was 
hoping for.)

As to the flexdll issue, I'm currently away, but I plan to refresh the 
installer just because of that when I get back.

For the "not all packages got installed by cygwin properly" error, 
please submit a pull request on the install.nsi file, it's really 
trivial to add a new package to the set of those that are installed by 
default. I'm surprised it didn't work by itself, but well.

Finally, for the OASIS-related errors, that's outside the scope of my 
responsibilities as a maintainer of the ocaml installer for windows :-).

Cheers,

jonathan

On Mon 15 Jul 2013 10:16:45 PM SGT, Romain Bardou wrote:
> Le 15/07/2013 14:39, Matthieu Dubuget a écrit :
>> Le 15/07/2013 14:22, Matthieu Dubuget a écrit :
>>> Le 15/07/2013 14:11, Romain Bardou a écrit :
>>>
>>>>
>>>> I have absolutely no clue what to do now. Is the installer from
>>>> protz.github deprecated?
>>> Well. I would say it is a little outdated. It should just be slightly
>>> adapted and recompiled.
>>>
>>
>> I must admit that using OCaml on windows with mingw flavour is not
>> actually a click and work experience…
>>
>> And most of the time, the packages are to be adapted in order to compile.
>>
>> I also hit another problem, that you should be aware of:
>>
>> on my installation, *i686-w64-mingw32-gcc -o toto ...* produces
>> *toto.exe* instead of *toto*.
>> But flexlink has asked for *toto*, and never sees *toto.exe*, which
>> leads to a compilation failure.
>
> Interesting. I managed to compile Cryptokit, LablGTK (this one took me a
> while…) and an application which uses both of them, without the error
> you describe.
>
> Thanks and cheers,
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Caml-list] OCaml installer on Windows no longer installs MinGW?
  2013-07-15 15:34       ` Jonathan Protzenko
@ 2013-07-15 15:59         ` Romain Bardou
  0 siblings, 0 replies; 9+ messages in thread
From: Romain Bardou @ 2013-07-15 15:59 UTC (permalink / raw)
  To: Jonathan Protzenko; +Cc: caml-list, matthieu.dubuget

Hi Jonathan,

it's good to know that the installer is still maintained.

The main issue, in my opinion, is the outdated version of FlexDLL; this
actually prevents compiling some packages. So it's good that you plan to
fix this.

Regarding ActiveTCL, is it actually used by anything else than
Ocamlbrowser? And, is Ocamlbrowser actually used? :p Anyway, I don't
think it is really an issue, except that the failure to download might
look scary to new users.

Regarding the install.nsi file: I don't think there is actually anything
to patch. The package mingw64-i686-gcc seems to be requested by your
installer. It was not installed on my machine, but it is probably a bug
in the Cygwin installer. Maybe one could try to add a test, after the
installation of Cygwin, to check that all packages have been installed,
and print an error like: "Cygwin setup did not install all necessary
packages, do you want to try again?".

Cheers,

-- 
Romain Bardou

Le 15/07/2013 17:34, Jonathan Protzenko a écrit :
> Hi,
> 
> The installer is indeed maintained, but it is slightly outdated. I 
> asked the people from Tcl/Tk to provide a "stable" URL, e.g. 
> installer-w32-threads-latest.exe, but they could not do it, and hosting 
> a copy of the installer myself would be a breach of license, so 
> unfortunately, the installer will keep breaking at regular intervals 
> because of that. (I guess I could get away with a php script on my 
> homepage that emits a Location: header, so that I just have to modify a 
> script and not regenerate the installer whenever the URL for the latest 
> stable version of tcl/tk changes, but that's more hackish than I was 
> hoping for.)
> 
> As to the flexdll issue, I'm currently away, but I plan to refresh the 
> installer just because of that when I get back.
> 
> For the "not all packages got installed by cygwin properly" error, 
> please submit a pull request on the install.nsi file, it's really 
> trivial to add a new package to the set of those that are installed by 
> default. I'm surprised it didn't work by itself, but well.
> 
> Finally, for the OASIS-related errors, that's outside the scope of my 
> responsibilities as a maintainer of the ocaml installer for windows :-).
> 
> Cheers,
> 
> jonathan
> 
> On Mon 15 Jul 2013 10:16:45 PM SGT, Romain Bardou wrote:
>> Le 15/07/2013 14:39, Matthieu Dubuget a écrit :
>>> Le 15/07/2013 14:22, Matthieu Dubuget a écrit :
>>>> Le 15/07/2013 14:11, Romain Bardou a écrit :
>>>>
>>>>>
>>>>> I have absolutely no clue what to do now. Is the installer from
>>>>> protz.github deprecated?
>>>> Well. I would say it is a little outdated. It should just be slightly
>>>> adapted and recompiled.
>>>>
>>>
>>> I must admit that using OCaml on windows with mingw flavour is not
>>> actually a click and work experience…
>>>
>>> And most of the time, the packages are to be adapted in order to compile.
>>>
>>> I also hit another problem, that you should be aware of:
>>>
>>> on my installation, *i686-w64-mingw32-gcc -o toto ...* produces
>>> *toto.exe* instead of *toto*.
>>> But flexlink has asked for *toto*, and never sees *toto.exe*, which
>>> leads to a compilation failure.
>>
>> Interesting. I managed to compile Cryptokit, LablGTK (this one took me a
>> while…) and an application which uses both of them, without the error
>> you describe.
>>
>> Thanks and cheers,
>>
> 


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2013-07-15 15:59 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-15 12:11 [Caml-list] OCaml installer on Windows no longer installs MinGW? Romain Bardou
2013-07-15 12:21 ` David Allsopp
2013-07-15 12:22 ` Matthieu Dubuget
2013-07-15 12:37   ` Romain Bardou
2013-07-15 12:42     ` Matthieu Dubuget
     [not found] ` <51E3E975.7020708@gmail.com>
2013-07-15 12:39   ` Matthieu Dubuget
2013-07-15 14:16     ` Romain Bardou
2013-07-15 15:34       ` Jonathan Protzenko
2013-07-15 15:59         ` Romain Bardou

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).