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 WAA20579; Tue, 25 Sep 2001 22:24:56 +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 WAA20575 for ; Tue, 25 Sep 2001 22:24:55 +0200 (MET DST) Received: from mail.genxnet.com (mail.genxnet.com [216.214.194.215]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f8PKOsT12519 for ; Tue, 25 Sep 2001 22:24:54 +0200 (MET DST) Received: from prozac-chiwawa.genxnet.com (prozac-chiwawa.genxnet.com [216.214.221.136]) by mail.genxnet.com (8.11.5/8.11.5) with ESMTP id f8PKOm322091 for ; Tue, 25 Sep 2001 15:24:48 -0500 Received: from gmvnetwork.com (uchi.genxnet.com [216.214.221.139]) by prozac-chiwawa.genxnet.com (8.9.3+Sun/8.9.3) with ESMTP id PAA27456 for ; Tue, 25 Sep 2001 15:18:44 -0500 (CDT) Message-ID: <3BB0E802.67F66824@gmvnetwork.com> Date: Tue, 25 Sep 2001 15:24:34 -0500 From: art X-Mailer: Mozilla 4.7 [en] (WinNT; I) X-Accept-Language: en MIME-Version: 1.0 To: caml-list@inria.fr Subject: Re: [Caml-list] Initial port of ocaml for mingw (long) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 1.3 (www dot roaringpenguin dot com slash mimedefang) Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk CaptnJamesKirk@aol.com said: > I could not get it to build completely, see the notes below. Due to the > number of cygwin tools needed, this will probably have to be a binary > distribution to use with mingw, not a source distribution to build with mingw. > Actually, my thought was to build with cygwin itself at least in the short term. The important thing (to me) is the ability to write nice software and distribute it without the cygwin dll. It's a bonus too that ocaml.exe works properly without it too, but the main thing was the ability to run ocamlopt and get an exe out that you can pass around easily. I built with cygwin's gcc (-mno-cygwin), tho. I think that it may not be realistic to build ocaml otherwise given that it uses unix tools to create the prims list, however it can easily be used without cygwin. I should've made it more clear that you need cygwin gcc as yet to build. The important point was that it's possible to get it away from dependence on cygwin1.dll... > In a message dated 9/24/2001 6:47:33 PM Central Daylight Time, > ayerkes@gmvnetwork.com writes: > > Assumptions: > > (You *must* have the CAMLLIB env variable set to a dos path > > containing your caml libraries. You have to have libcamlrun.a > > in this directory in order for things to work. You may wish > > to premake this directory and copy files as necessary) > > Ok, I did this. I was able to build through libcamlrun.a (see below), and I > copied it to the appropriate directory, but not much else worked. > Good to know it got that far with the mingw compiler by itself. > > > > Building: > > > > With the files ocaml-3.02.tar.gz, ocaml-mingw-diffs and > > ocaml-boot-mingw.tgz in a directory, do the following: > > (sorry for breaking the build process) > > > > gzip -d < ocaml-3.02.tar.gz | tar xvf - > > Or just "tar zxvf ocaml-3.02.tar.gz". > > gzip and tar are part of the cygwin distro. I created a separate bin > directory, put it in my path, and copied several things from cygwin to it. > These included cygwin1.dll (of course), make (for some reason the make that > comes with mingw has problems), tar, gzip & gunzip, ar, awk & gawk, bash > (renamed to sh), patch, and lots of text-utils and file-utils. The main > cygwin bin directory was not in my path, so that only the mingw gcc, as > (assembler), and libraries were used. I can make a complete list of the tools > needed from cygwin, if I can get it all to work. > Hmm... > > > cd ocaml-3.02 > > patch -p 0 < ../ocaml-mingw-diffs > > gzip -d < ../ocaml-boot-mingw.tgz | tar xvf - > > make > > : The build breaks here (access.c) ... builds ok next time > > Umm, not for me. Actually the first break involved building libcamlrun.a, > when the linker couldn't find libpdcurses.a (which isn't part of mingw). In > fact, pdcurses isn't part of my cygwin distro either, but I copied the > regular ncurses library file to the mingw lib directory and renamed it > libpdcurses.a and that seemed to work. The next break was nowhere near > access.c, and had to do with finding pervasives.cmi. I tried "make world" > instead of just "make" and it built through pervasives.cmi but stopped at > bytecode/emitcode.ml with the error "Unbound value opEQ". > Sorry, I should've mentioned that I used a small public domain curses that was different from the mingw one. I meant to change that back but didn't. (sorry) > I tried several different things, but could never get it beyond this point. > ocamlrun.exe, libocamlrun.a and ocamlyacc.exe were built, but nothing else. > > > > > Hopefully, this is a step in the right direction for a MinGW port. > > In any case, it relives the user of ocaml toplevel environments > > from having to have cygwin, in addition to allowing one to create > > executables that are free from cygwin. > > > > To complete the cycle, someone who is a bit better with mingw than > > I will have to change the compile line in bytelink.ml and asmlink.ml > > to reflect mingw, > > I don't think this part will be necessary, since the mingw compiler and > assembler are gcc and as, just like cygwin, but I'm not completely sure. > It at least needs a little I'm sure... Even if just to get rid of the -mno-cygwin part. > /John > ------------------- > 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 > ------------------- 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