Version française
Home     About     Download     Resources     Contact us    
Browse thread
Re: [Caml-list] MingW compiler (!) and Ocaml for Windows
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Markus E L <ls-ocaml-2006@m...>
Subject: Re: [Caml-list] MingW compiler (!) and Ocaml for Windows

Adrien wrote:

> Hi,
>
> If I can read correctly, diversion is recent (i.e. ocaml 3.10) (
> http://camlcvs.inria.fr/cgi-bin/cvsweb/ocaml/utils/ccomp.ml.diff?r1=text&tr1=1.1&r2=text&tr2=1.20.4.8
> ).

Aha!

>
> For the lazy ones, from ccomp.ml,
>  > if Sys.os_type = "Win32" && String.length s >= 256
>  > then build_diversion lst
>  > else s
> 256 is very low. When compiling ocaml, some commands are more than
> 2100 chars and they don't fail. If there was a 256 character limit I
> wouldn't compile much things (I can make opt.opt for ocaml and
> mldonkey compiles completely).

So you're already using 3.10 on Windows with MingW? Or am I reading
you wrongly?

And does that mean that the supposed problem is/was in the
communication between Ocaml and the MingW compiler? 

>>From this page: http://www.accesspdf.com/article.php/2005020713040824
>  > What about Windows users who use the bash command shell, as packaged by
>  > MSYS? I couldn't find an immediate answer via Google, but I did find a script
>  > that tests this limit. It is used in the libtool configure script.
> I changed it a little,
>  > and the results of my script (below) suggests you have at least 3145729
>  > characters, or about 3MB.
>
>  > This result differs from that cited in the libtool configure script
> comments (256k
>  > character limit for the mingw environment).
>
> I'm sure 256 chars is not the true limit but 256k chars seems too
> high. Conclusion ? =/

Oh no. The matter is completely confused. That is the conclusion. I
think I'll have to do 2 things: Read and grep in the MingW gcc source
and do the same with the last 2 or three ocaml versions. And then try
to set up some test cases. That will take some time, so nobody expect
any results soon :-). My initial hope was that somebody would remember
a clear cut test case and the exact location where the problem is. I'm
also a bit confused by MSYS creeping in here as a topic. 

Perhaps there are two different issues?

The Ocaml-MingW problem can in my estimation only be one of building
the right commandlines for the Mingw-Compiler. Information flow is
from Ocaml to MingW and MingW gcc perhaps must understand
@responsefile. 

The problem between MSYS and Ocaml must be the other way round: MSYS
(shell) calls native Ocaml and when the command line gets too long it
might use @responsefile, so Ocaml needs to understand it.

I thought README.Win32 would refer to the first problem. Which would
have to be fixed in MingW gcc and perhaps already is. But YMMV -- that
is, I'm simply lacking information.

> Btw, I am working on having ocaml work better under mingw. You can
> have a look at this page : http://wiki.cocan.org/ocaml_mingw_port . It
> doesn't work completely but mostly (in fact it may work for ocaml
> 3.09).

That's cool. I think we should pool efforts (well, as many effort as I
can spare at the moment, that is, no promises).

> Having a fully functionnal configure script is required for ocaml
> features not to be determined by the lowest common factor which is
> pretty low under win32...

? Didn't understand that. You're talking about building OCaml under
Win32, not about comoiling with OCaml?

Regards -- Markus