From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: ** X-Spam-Status: No, score=2.8 required=5.0 tests=DNS_FROM_RFC_POST,SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id B987CBBC4 for ; Fri, 6 Mar 2009 11:40:19 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AnICABOMsElA6ba4k2dsb2JhbACUQD8BAQEBCQkKCREDsiuBB49EAQMBA4QFBoMI X-IronPort-AV: E=Sophos;i="4.38,314,1233529200"; d="scan'208";a="23949370" Received: from nf-out-0910.google.com ([64.233.182.184]) by mail3-smtp-sop.national.inria.fr with ESMTP; 06 Mar 2009 11:40:18 +0100 Received: by nf-out-0910.google.com with SMTP id b11so44107nfh.13 for ; Fri, 06 Mar 2009 02:40:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:references:message-id:from:to :in-reply-to:content-type:content-transfer-encoding:mime-version :subject:date:cc:x-mailer; bh=+6e35uS6kJHZRWrX67pX7yPdNPtGpL20Pro1ErXKloE=; b=MEhz0saXod829yIvuxIm8azz7X9hhUp9+r4+Ukw5Qx8DNdDQKUhYIGUwmW6q94hs2D 5Dqcj47Oo0X6TMsFYF6oybijQqKe896VzZqo5OWwM1M1CZn3j1q1OkbKfIuQ4MUEOXVT a/LPOgoa0arsO5097ABBDeoNcTQnecAKi4qHQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=references:message-id:from:to:in-reply-to:content-type :content-transfer-encoding:mime-version:subject:date:cc:x-mailer; b=XQ4d7l8mnarTsFUvwgGqJZ08XV8QqH0zp8hB1ICkHK7z+tXJz8rRJWXhsCM3lPWrAI B7FnJaK44OZp0UdSKEZhv1NEH9b7d1wOGM8yZXk8LzNMUC0GbSUXxRySXq0r1otx2Bvc 45tJ5x1dRa4mQuqf8YrKT7L65a+84T9m7aqoI= Received: by 10.210.92.8 with SMTP id p8mr448269ebb.86.1236336018205; Fri, 06 Mar 2009 02:40:18 -0800 (PST) Received: from ?10.10.30.14? (171.Red-88-3-3.dynamicIP.rima-tde.net [88.3.3.171]) by mx.google.com with ESMTPS id f7sm2046644nfh.53.2009.03.06.02.40.15 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 06 Mar 2009 02:40:17 -0800 (PST) References: <5D9E51D7-E609-44C1-B09C-D93B68F03301@gmail.com> <006201c99da4$8c51d3a0$a4f57ae0$@com> <92486029-2A0B-4C91-84CC-6D908059580A@gmail.com> Message-Id: From: Joel Reymont To: Andres Varon , Nicolas Pouillard In-Reply-To: Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: [Caml-list] building 64bit ocaml from cvs on mac osx leopard Date: Fri, 6 Mar 2009 10:40:13 +0000 Cc: O'Caml Mailing List X-Mailer: Apple Mail (2.930.3) X-Spam: no; 0.00; ocaml:01 cvs:01 asmcomp:01 mlp:01 asmcomp:01 mlp:01 clflags:01 clflags:01 deps:01 byte:01 ocamlrun:01 byte:01 distclean:01 ocamlopt:01 ocaml:01 On Mar 5, 2009, at 4:08 PM, Andres Varon wrote: > I don't think that it compiles the way it is now. It seems to me > that there was a version merge error and asmcomp/amd64/emit.mlp has > repeated definitions of emit_call and emit_jump. Here's the offending part of asmcomp/amd64/emit.mlp. The two load_symbol_addr are equivalent and the only difference in the rest is the Mac OSX check. /More after the code/ let emit_call s = if !Clflags.dlcode && not macosx then `call {emit_symbol s}@PLT` else `call {emit_symbol s}` let emit_jump s = if !Clflags.dlcode && not macosx then `jmp {emit_symbol s}@PLT` else `jmp {emit_symbol s}` let load_symbol_addr s = if !Clflags.dlcode then `movq {emit_symbol s}@GOTPCREL(%rip)` else if !pic_code then `leaq {emit_symbol s}(%rip)` else `movq ${emit_symbol s}` let emit_call s = if !Clflags.dlcode then `call {emit_symbol s}@PLT` else `call {emit_symbol s}` let emit_jump s = if !Clflags.dlcode then `jmp {emit_symbol s}@PLT` else `jmp {emit_symbol s}` let load_symbol_addr s = if !Clflags.dlcode then `movq {emit_symbol s}@GOTPCREL(%rip)` else if !pic_code then `leaq {emit_symbol s}(%rip)` else `movq ${emit_symbol s}` On my system dlcode is true and so is macosx so it should note be taking the PLT branch. There's also this ocamlbuild rule for building asmcomp/emit.ml from asmcomp/amd64/emit.mlp let emit_mlp = "asmcomp"/C.arch/(if ccomptype = "msvc" then "emit_nt.mlp" else "emit.mlp") in rule "emit.mlp" ~prod:"asmcomp/emit.ml" ~deps:[emit_mlp; "tools/cvt_emit.byte"] begin fun _ _ -> Cmd(S[ocamlrun; P"tools/cvt_emit.byte"; Sh "<"; P emit_mlp; Sh">"; Px"asmcomp/emit.ml"]) end;; I believe the issue is that distclean.sh does not remove ocamlopt in the root of the ocaml source distribution. I was able to get past the PLT error once I removed ocamlopt from the root of the tree and modified asmcomp/amd64/emit.mlp to remove the second set of emit_call and emit_jump functions that do not include Mac OSX checks. I got a different error from fastworld.sh now and it does not seem to be related to 64 bits. + boot/ocamlyacc -v ocamldoc/odoc_text_parser.mly 5 shift/reduce conflicts. + ./ocamlc.opt -nostdlib -c -g -w Ale -warn-error Ale -I toplevel -pp 'boot/ocamlrun camlp4/boot/camlp4boot.byte' -I camlp4 -I stdlib -I camlp4/Camlp4Top -I camlp4/build -o camlp4/Camlp4Top/Top.cmo camlp4/ Camlp4Top/Top.ml File "camlp4/Camlp4Top/Top.ml", line 37, characters 4-26: Error: Unbound value Toploop.print_location --- http://tinyco.de Mac, C++, OCaml