Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] Suggestions for Building OCaml from CVS With MS VC++ 6.0
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2002-07-06 (14:21)
From: Brian Smith <brian-l-smith@u...>
Subject: [Caml-list] Suggestions for Building OCaml from CVS With MS VC++ 6.0
Here are some notes that people might find helpful if they get stuck 
during building ocaml from sources (e.g. from CVS):

1. The README.win32 says you should only have to modify the 
config/Makefile in two places (TK_ROOT and PREFIX). But, I actually had 
to modify a third line so that the MS linker could find the tcl/tk 

BEFORE: TK_LINK=tk83.lib tcl83.lib
AFTER : TK_LINK=$(TK_ROOT)/lib/tk83.lib $(TK_ROOT)/lib/tcl83.lib

2. If you have cygwin and ActiveState Perl installed on your computer, 
with both of them in the path, cygwin must be ahead of ActiveState Perl 
on the path or the build will fail during "make -f Makefile.nt world". 
Apparently this is due to the fact that both distributions have a script 
called "head". You can see if this is a problem by typing "which head"; 
you should get "/usr/bin/head", not 

3. If (when) the build fails during "make -f Makefile.nt opt", the error 
message will be something like "cannot find program 'ml'". It is easy to 
trick yourself into thinking that "ml" is supposed to be some kind of 
bootstrapping (oca)ml program or script that failed to get built. 
Actually, this is ml.exe from the MASM distribution that you have to 
download to build ocaml. This error message indicates that you don't 
have %MASM_ROOT%/bin/win98 in your path (where %MASM_ROOT% represents 
the folder that masm is installed in).

I hope somebody finds these notes helpful.

Best wishes,

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: