caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Correnson Loïc" <Loic.Correnson@trusted-labs.fr>
To: caml-list@inria.fr
Subject: win32-ocamlopt 3.10
Date: Thu, 25 Oct 2007 11:02:17 +0200	[thread overview]
Message-ID: <47205B99.90907@trusted-labs.fr> (raw)

I was using win32-msvc-ocamlopt-3.06 for *many* years without any
problem. I'm trying to upgrade to 3.10 with VC++ 2005 Express, but still
have problems on linking phase.

Symptom:

> $ ocamlopt -verbose -o fact.exe fact.ml
> + ml /nologo /coff /Cp /c /Fo"fact.obj" "C:\tmp\camlasm66fdf0.asm">NUL
> + ml /nologo /coff /Cp /c /Fo"C:\tmp\camlstartup8f1c00.obj" "C:\tmp\camlstartupfba8a6.asm">NUL
> + cl /nologo -D_CRT_SECURE_NO_DEPRECATE /MT /Fe"fact.exe" -I"D:\ocaml-3.10\lib" "C:\tmp\camlstartup8f1c00.obj" "D:\ocaml
> -3.10\lib\std_exit.obj" "fact.obj" "D:\ocaml-3.10\lib\stdlib.lib"  "D:\ocaml-3.10\lib\libasmrun.lib" advapi32.lib  /link
>  /subsystem:console
> Error during linking

Installed required packages (on Windows 2000 Pro):
 * VC++ 2005 Express
 * Platform SDK SP1
 * MASM (found v8.00)

Already corrected or checked correct:
 * clash in $PATH between cygwin/bin/link and VC/bin/link
 * $PATH and $LIB includes references to VC++ and SDK paths

> $ ls *.obj c:/tmp/*.obj c:/tmp/*.asm
> ls: c:/tmp/*.obj: No such file or directory
> c:/tmp/camlstartupfba8a6.asm  fact.obj

It seems that actually ml fails on creating the temporary .obj file.
However, when I reply by hand the associated cl step:

> $ ml /nologo /coff /Cp /c /Fo"C:\tmp\camlstartup8f1c00.obj" "C:\tmp\camlstartupfba8a6.asm"
>  Assembling: C:\tmp\camlstartupfba8a6.asm

The .obj file is now assembled !

> $ ls *.obj c:/tmp/*.obj c:/tmp/*.asm
> c:/tmp/camlstartup8f1c00.obj  c:/tmp/camlstartupfba8a6.asm  fact.obj

However, when trying to link again by hand:
> $ cl /nologo -D_CRT_SECURE_NO_DEPRECATE /MT /Fe"fact.exe" -I"D:\ocaml-3.10\lib" "C:\tmp\camlstartup8f1c00.obj" "D:\ocam
> l-3.10\lib\std_exit.obj" "fact.obj" "D:\ocaml-3.10\lib\stdlib.lib"  "D:\ocaml-3.10\lib\libasmrun.lib" advapi32.lib  /li
> nk  /subsystem:console

No output on std, but it seems to have failed again...
> $ echo $? ; ls fact.*
> 128
> fact.cmi  fact.cmx  fact.ml  fact.obj

Unfortunately, link /HELP and cl /HELP does not output anything
(unlike ml!)
Does anyone known how to debug linking phase on VC++ ?
Does anyone succeed in using ocamlopt-msvc-3.10 ?

	L.


             reply	other threads:[~2007-10-25  9:01 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-25  9:02 Correnson Loïc [this message]
2007-10-25  9:39 ` [Caml-list] " Correnson Loïc
2007-10-25  9:51 ` Julien Moutinho

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=47205B99.90907@trusted-labs.fr \
    --to=loic.correnson@trusted-labs.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).