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=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id 17E1EBC6B for ; Wed, 19 Sep 2007 18:27:53 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAAPDq8EbAXQImk2dsb2JhbACBWIw6AgEBBwQGByA X-IronPort-AV: E=Sophos;i="4.20,274,1186351200"; d="scan'208";a="1044539" Received: from discorde.inria.fr ([192.93.2.38]) by mail1-smtp-roc.national.inria.fr with ESMTP; 19 Sep 2007 18:29:08 +0200 Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l8JGSLqs031069 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Wed, 19 Sep 2007 18:28:26 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ah4FACzr8EbVhW6V/2dsb2JhbACBWA X-IronPort-AV: E=Sophos;i="4.20,274,1186351200"; d="scan'208";a="2925181" Received: from server2.thinkcrime.de ([213.133.110.149]) by mail3-smtp-sop.national.inria.fr with ESMTP; 19 Sep 2007 18:29:07 +0200 Received: from hod-sarge-2005-10.lan.m-e-leypold.de (dslb-088-072-248-030.pools.arcor-ip.net [88.72.248.30]) (Authenticated sender: hod-sarge-2005-10@server2) by server2.thinkcrime.de (Postfix) with ESMTP id 95B4E900245 for ; Wed, 19 Sep 2007 18:29:05 +0200 (CEST) Received: by hod-sarge-2005-10.lan.m-e-leypold.de (Postfix, from userid 1003) id 31F9C37C38; Wed, 19 Sep 2007 18:33:54 +0200 (CEST) To: caml-list@inria.fr Subject: Re: [Caml-list] 3.10.0 on Windows XP References: <0172C3AE3A0E964797AF43E206C1048F0ED47F@FRCOR-EXMB06.europe.am.socgen> From: Markus E L Organization: N/A Date: Wed, 19 Sep 2007 18:33:54 +0200 In-Reply-To: <0172C3AE3A0E964797AF43E206C1048F0ED47F@FRCOR-EXMB06.europe.am.socgen> (RABIH ELCHAAR's message of "Wed, 19 Sep 2007 18:01:43 +0200") Message-ID: User-Agent: Some cool user agent (SCUG) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Miltered: at discorde with ID 46F14E25.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; markus:01 ocaml:01 toolchain:01 lablgtk:01 lablgtk:01 ocaml:01 mingw:01 mingw:01 compiler:01 compiler:01 cygwin:01 markus:01 2.0:98 virgin:98 havoc:98 wrote: > Ocaml 3.10 native windows uses the VS2005 toolchain. > You should make it available. > The ocamlrul.exe should depend on MSVCRT80.dll wich comes with the > .net 2.0 framework. And should, according to MS, be distributed with the application and be installed in an application local directory. The same applies to MSVCRT70.dll, which, I note in passing, the current lablgtk has been compiled against, but doesn't include: lablgtk won't run on a virgin windows install, and technically there is no legal way to get the DLL w/o getting the development environment, except from the application developer. MS doesn't offer it for download. Furthermore, mixing older MSVCRT* with MSVCRT70.dll and above is not recommended and will wreak havoc. Since the available Ocaml 3.09 for Windows has been compiled with MingW, it links NOT again MSVCRT70, but against MSVCRT.DLL (which is redistributable and comes with the system), it's just be tenous chance that the binary lablgtk runs with the MingW windows distribution (and I think some of the instabilities observed are due to this mixing of DLLs). I'd even suspect using the current binary distribution of Lablgtk with a compiler that links against MSVCRT80 via visual studio will sooner or later incur problems. I hope, I didn't mix up all the library names (quoting from memory), but the essence of all this is, to build all DLLs consistently against the same MSVCRT version. So there should actually be 3 distributions (mind you, of anything with a DLL in it): - MingW (links agains MSVCRT.DLL) - VS 2003 (or something): Links against MSVCRT70 and also distributes this library (if permissible, AFAIR the express edition doesn't allow this, so you're essentially f***ed with the Express Edition, or better: Your users are: No point and click install, except you already have the DLL installed in a windows system directory, which, mind you, is against the rules). - VS 2005: Links against MSVCRT80. Technically this characterizes the target platform, not how the compiler itself has been build. I can imagine a compiler linked against MSVCRT80 which in itself uses cygwin or MingW as backend and thus produces MSVCRT.DLL linked executables, though I don't think anyone has ever tried that. I've been wanting to post that for some time, never made it to the lablgtk mailinglist, though I will take it up there in the next weeks. Regards -- Markus