Version française
Home     About     Download     Resources     Contact us    
Browse thread
Re: [Caml-list] cygwin/mingw linking
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Dmitry Bely <dbely@m...>
Subject: Re: RE : [Caml-list] cygwin/mingw linking
"Lionel Fourquaux" <lionel.fourquaux@wanadoo.fr> 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