caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Matthieu Wipliez <mwipliez@yahoo.fr>
To: Caml List <caml-list@inria.fr>
Subject: beta-test of OCaml 3.10.0: compiling on Windows, trying the new Camlp4
Date: Fri, 23 Mar 2007 17:28:05 +0000 (GMT)	[thread overview]
Message-ID: <650869.47988.qm@web27006.mail.ukl.yahoo.com> (raw)

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

Hello,

I compiled OCaml 3.10.0 on Windows XP SP2 using Cygwin and Microsoft Visual Studio 2005.
Surprisingly, this did not go as smoothly as I thought. Hence I would like to share my experience:

1) the directory where the MSVC compiler, linker, and other tools are installed must be in the path : C:\Program Files\Microsoft Visual Studio 8\VC\bin
2) some tools (at least the compiler and linker) apparently need a DLL (mspdb80.dll), so one has to add "C:\Program Files\Microsoft Visual Studio 8\Common7\IDE" to the path
3) under Cygwin, I had a clash between the linker (link) and the link command (link (GNU coreutils) 5.97). For everything to work, I had to remove the link command from Cygwin (renamed the link.exe file).
4) the compiler needs the INCLUDE variable to be defined with the MSVC include path (as well as Tcl's, but this is specified in the doc)
C:\Program Files\Microsoft Visual Studio 8\VC\include;C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include;C:\Tcl\include
5) for the linker, the variable is called LIB, and must contain:
C:\Program Files\Microsoft Visual Studio 8\VC\lib;C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib;C:\Tcl\lib

I would suggest to update the documentation (README.win32 file) by adding precisions concerning the INCLUDE, LIB and PATH variables, as well as the "link" command problem.

In addition, it seems that compilation can fail if OCAMLLIB is defined (complains about a .cmi in $OCAMLLIB not being up to date).


After compilation/installation, I tested this new version, compiling with "ocamlc.opt -pp camlp4o.opt". Is it still the right way to preprocess with Camlp4 ? Anyway, here's what I obtain:
  - in a class, "method private virtual" is not accepted anymore, the order has to be "method virtual private".
  - assert MySet.is_empty set; is not accepted anymore either, I have to add brackets: assert (MySet.is_empty set);
  - compiling a file containing this kind of comment (* <<<< COMMENT *) fails with "Quotation not terminated".
  - in a .mli, declaring an empty module ABC, with "module type ABC" does not work (but does without preprocessing).

I used the version from http://caml.inria.fr/pub/distrib/ocaml-3.10/ocaml-3.10.0+beta.tar.gz, so maybe some things have been corrected since.


Matthieu



	

	
		
___________________________________________________________________________ 
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions ! 
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses 
http://fr.answers.yahoo.com

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

             reply	other threads:[~2007-03-23 17:28 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-23 17:28 Matthieu Wipliez [this message]
2007-03-24 15:40 ` [Caml-list] " Nicolas Pouillard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=650869.47988.qm@web27006.mail.ukl.yahoo.com \
    --to=mwipliez@yahoo.fr \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).