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=1.7 required=5.0 tests=AWL,DNS_FROM_SECURITYSAGE, SPF_FAIL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id 6E98BBB84 for ; Fri, 14 Nov 2008 13:57:38 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgIDAEAEHUnAXQIngWdsb2JhbACTWQEBFiK8OIJ4 X-IronPort-AV: E=Sophos;i="4.33,603,1220220000"; d="scan'208";a="17208306" Received: from concorde.inria.fr ([192.93.2.39]) by mail2-smtp-roc.national.inria.fr with ESMTP; 14 Nov 2008 13:57:38 +0100 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id mAECvbgZ000379 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Fri, 14 Nov 2008 13:57:38 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgIDAGsEHUlQRFuwgWdsb2JhbACTWQEBFiK8PIJ4 X-IronPort-AV: E=Sophos;i="4.33,603,1220220000"; d="scan'208";a="31455806" Received: from furbychan.cocan.org ([80.68.91.176]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/AES256-SHA; 14 Nov 2008 13:57:37 +0100 Received: from rich by furbychan.cocan.org with local (Exim 4.63) (envelope-from ) id 1L0yEw-0007qz-7d for caml-list@inria.fr; Fri, 14 Nov 2008 12:57:34 +0000 Date: Fri, 14 Nov 2008 12:57:34 +0000 To: caml-list@inria.fr Subject: OCaml 3.11.0+beta1 cross-compiler Message-ID: <20081114125733.GA30050@annexia.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.13 (2006-08-11) From: Richard Jones X-Miltered: at concorde with ID 491D75C1.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocaml:01 bug:01 compiler:01 makefiles:01 ocamlc:01 pervasives:01 cmi:01 wine:98 config:01 binaries:01 unix:01 executables:01 caml:02 binary:02 native:03 Despite bug 4303 (http://caml.inria.fr/mantis/view.php?id=4303) having lead to some changes in the compiler, I'm still extremely perplexed about how to build a cross-compiler. I want an 'ocamlopt' to be a Linux native binary[1] that generates Windows executables. We have a cross-assembler and cross-linker (i686-pc-mingw32-as and i686-pc-mingw32-gcc respectively). We also have a cross-compiler version of flexdll. My best attempt so far has been to generate config/{m,s}.h from prepared Windows versions, and then build using the Unix Makefiles. This gets some way, but produces an ocamlc which searches for files using \ as a path separator, which is wrong and causes it to fail looking for pervasives.cmi. Anyone done this, or care to share any more hints? Rich. [1] Running stuff under Wine isn't acceptable and nor is installing binaries. -- Richard Jones Red Hat