From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id KAA04416; Mon, 17 Sep 2001 10:45:38 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id KAA04520 for ; Mon, 17 Sep 2001 10:45:37 +0200 (MET DST) Received: from relay.rinet.ru (relay.rinet.ru [195.54.192.35]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f8H8jZD24809 for ; Mon, 17 Sep 2001 10:45:36 +0200 (MET DST) Received: (from uucp@localhost) by relay.rinet.ru (8.11.6/8.11.4) with UUCP id f8H8jZJ00632 for caml-list@inria.fr; Mon, 17 Sep 2001 12:45:35 +0400 (MSD) X-Envelope-To: caml-list@inria.fr Received: from dialin1.stormoff (DIMA) [192.168.0.129] by stormoff with esmtp (Exim 2.05 #1 (Debian)) id 15itxb-0001Rj-00; Mon, 17 Sep 2001 12:40:59 +0400 X-Comment-To: "Lionel Fourquaux" To: caml-list@inria.fr Subject: Re: RE : [Caml-list] cygwin/mingw linking References: <000001c13ed9$f39fb540$b1290b50@fourquauche3ay> From: Dmitry Bely Date: 17 Sep 2001 12:40:31 +0400 In-Reply-To: <000001c13ed9$f39fb540$b1290b50@fourquauche3ay> Message-ID: User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.1 (Crater Lake) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk "Lionel Fourquaux" writes: > I think that you should use the win32 version of ocaml instead if the > cygwin one. You may want to rebuild it to use the mingw tools. It's not > entirely trivial, but it has already been done. The Unix lib causes some > problems, though. No problem - it's already adapted for MSVC and can be directly compiled with mingw because mingw uses just the same clib (msvcrt.dll). What should be done to compile OCaml with mingw: 1. Manually create proper config/Makefile config/m.h config/s.h (configure script won't work for mingw). 2. Update many makefiles to sync them with MSVC port (add necessary conditionals etc.) 3. win32unix library uses undocumented _dospamerr() function that is available only in the static MSVC runtime. You should exctract it from Microsoft RTL sources. 4. gcc does not understand __declspec( thread ), so you need somethere #ifdef __GNUC__ #define TLS __attribute__((section (".tls$"))) #else #define TLS __declspec( thread ) #endif 5. something else, that I've forgotten to mention... Hope to hear from you soon, Dmitry ------------------- Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr