From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 9C3FABC2F for ; Sat, 27 Nov 2004 07:14:37 +0100 (CET) Received: from wproxy.gmail.com (wproxy.gmail.com [64.233.184.204]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id iAR6EaQZ017296 for ; Sat, 27 Nov 2004 07:14:37 +0100 Received: by wproxy.gmail.com with SMTP id 69so1003910wra for ; Fri, 26 Nov 2004 22:14:36 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:mime-version:content-type:content-transfer-encoding; b=SQ0I8A6RZCYtHTVyN+FNU8P43VMSQpDhMBeN7T/1BowX6yKnmbWJb+mB9VQxEf3A0z3WbPs9TlEXDATos4+4ymoyqNpB9ddE+eyv7thHvlcVjrnoRxUpWW2fZeeuvAF40cs7trd0MODDWMaixz4cghBd3ceWgqYQA67aw/lDI3Y= Received: by 10.54.10.60 with SMTP id 60mr1402993wrj; Fri, 26 Nov 2004 22:14:36 -0800 (PST) Received: by 10.54.37.75 with HTTP; Fri, 26 Nov 2004 22:14:36 -0800 (PST) Message-ID: <388f6fcd041126221466abac1d@mail.gmail.com> Date: Fri, 26 Nov 2004 22:14:36 -0800 From: Sachin Shah Reply-To: Sachin Shah To: caml-list@yquem.inria.fr Subject: Compiling OCaml w/MS VC++ Toolkit 2003 Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce with ID 41A81B4C.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; ocaml:01 ocaml:01 sdk:01 sdk:01 'make:01 makefile:01 opt':01 stdlib:01 ocamlopt:01 lib':01 ocamlrun:01 ocamlopt:01 stdlib:01 cmxa:01 pervasives:01 X-Spam-Checker-Version: SpamAssassin 3.0.0 (2004-09-13) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_BY_IP autolearn=disabled version=3.0.0 X-Spam-Level: Hello all, Just joined this list, and it's looking pretty good! In order to use the latest OCaml, I'm trying to compile it from source using: (1) MS Visual C++ Toolkit 2003 (2) MS Visual Studio .NET SDK (3) MS Platform SDK for Windows XP SP2 After a lot of work, I have all the files I need to do the install. However, I am stuck on one part and don't know what to do. When running the command 'make -f Makefile.nt opt', make descends into the stdlib source directory. There, using ocamlopt, it constructs the file 'stdlib.cmxa'. Directly after that, I get an error message that prevents the computer from creating the 'stdlib.lib' file. Here is that message: ================================ (extra lines added for clarity) ../boot/ocamlrun ../ocamlopt -a -o stdlib.cmxa pervasives.cmx array.cmx list.cmx char.cmx string.cmx sys.cmx hashtbl.cmx sort.cmx marshal.cmx obj.cmx int32.cmxint64.cmx nativeint.cmx lexing.cmx parsing.cmx set.cmx map.cmx stack.cmx queue.cmx stream.cmx buffer.cmx printf.cmx format.cmx scanf.cmx arg.cmx printexc.cmx gc.cmx digest.cmx random.cmx callback.cmx camlinternalOO.cmx oo.cmx genlex.cmx weak.cmx lazy.cmx filename.cmx complex.cmx arrayLabels.cmx listLabels.cmx stringLabels.cmx moreLabels.cmx stdLabels.cmx LINK : fatal error LNK1104: cannot open file '@c:\DOCUME~1\sachin\LOCALS~1\Temp\camlrespfba3be' ../boot/ocamlrun ../ocamlopt -warn-error A -nostdlib `./Compflags std_exit.cmx` -c std_exit.ml ================================ As you can see, it ignores the error and continues with creating the 'std_exit.cmx' file. Searching through the archives here produced nothing. Searching google came up with a similar error in a project called MetaPRL. However, the folks there could present no solution. Hopefully, someone here can :). From what they were saying, ocamlopt supposedly calls the library creation program (which, in my case, is actually the command 'link /lib'). However, it seems that either (1) ocamlopt is never creating the file, causing the linker to fail, (2) ocamlopt deletes the file before the linker can get to it (however, I was monitoring the directory and did not see a file being created), or (3) there is simply something wrong with ocamlopt and MS VC++ Toolkit 2003 interaction. My background is mostly in Linux C/C++ development and Java development. I am familiar with makefiles, but not with the MSVC++. Thanks for your help, Sachin.