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 XAA22315; Fri, 1 Aug 2003 23:24:52 +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 XAA28892 for ; Fri, 1 Aug 2003 23:24:51 +0200 (MET DST) Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.183]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h71LOoT27189 for ; Fri, 1 Aug 2003 23:24:50 +0200 (MET DST) Received: from [212.227.126.160] (helo=mrelayng.kundenserver.de) by moutng.kundenserver.de with esmtp (Exim 3.35 #1) id 19ihOM-0007bR-00; Fri, 01 Aug 2003 23:24:50 +0200 Received: from [80.129.102.197] (helo=gate.gerd-stolpmann.de) by mrelayng.kundenserver.de with asmtp (Exim 3.35 #1) id 19ihOL-00034Z-00; Fri, 01 Aug 2003 23:24:49 +0200 Received: from ice.gerd-stolpmann.de (ice.gerd-stolpmann.de [192.168.0.13]) by gate.gerd-stolpmann.de (Postfix) with ESMTP id 5BF4D56EF; Fri, 1 Aug 2003 23:24:47 +0200 (CEST) Received: by ice.gerd-stolpmann.de (Postfix, from userid 1000) id EDAEDB014; Fri, 1 Aug 2003 23:24:45 +0200 (CEST) Subject: Re: [Caml-list] GODI available for download From: Gerd Stolpmann To: Fred Yankowski Cc: caml-list@inria.fr In-Reply-To: <20030731165106.GA1754@ontosoft.com> References: <1059601286.9556.8.camel@ice.gerd-stolpmann.de> <20030731165106.GA1754@ontosoft.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Message-Id: <1059773084.4366.44.camel@ice.gerd-stolpmann.de> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.2.4 Date: 01 Aug 2003 23:24:45 +0200 X-Loop: caml-list@inria.fr X-Spam: no; 0.00; gerd:01 stolpmann:01 caml-list:01 yankowski:01 bootstrap:01 xlib:01 -dev:01 labltk:01 recursively:01 netbsd:01 dependencies:01 viktoriastr:01 64293:01 darmstadt:01 8.3:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Am Don, 2003-07-31 um 18.51 schrieb Fred Yankowski: > On Wed, Jul 30, 2003 at 11:41:27PM +0200, Gerd Stolpmann wrote: > > In the past days I have worked on GODI, an experimental source-based > > O'Caml distribution, and I think it is now worth a try. > > > > You can get the current bootstrap tarball here: > > > > http://www.ocaml-programming.de/packages/godi-bootstrap-20030730.tar.gz > > I gave it a try on a Linux 2.4.20 / Debian 3.0 machine, where (as far > as I can recall) I have never installed ocaml. Although I have lots > of experience with Debian package management, I've never BSD-style > package management tooks before. So here's what ensued: Thank you very much. I need more such user reports to make GODI as easy and as reliable as possible. > The godi-ocaml package built and installed easily. > > To build godi-ocaml-graphics I had to first install the Debian > xdev-libs package to get the needed Xlib.h and Xutil.h files. No big > deal. Ok, I will add a hint to the README. > Building godi-ocaml-labltk was a minor pain. I had to install the > Debian tcl8.3-dev and tk8.3-dev packages to get the tcl.h and tk.h > files. But building godi-ocaml-labtl would still fail to find those > headers. I saw the note in the main README about "So if your tcl/tk > libraries are not found, you have to fix the problem in > godi-ocaml-src" and I eventually saw the note in the DESCR file for > godi-ocaml-src saying that tcl/tk should be installed first. The reason for this strange dependency is that the O'Caml sources contain both the base system and the labltk code, but that I wanted to split it up for GODI. Not for everybody labltk is important, so it should be possible to install only the base system without labltk. However, because the base system and labltk are configured by the same script, the question arose where to put this common configuration step. This is the idea of godi-ocaml-src, it configures all of the O'Caml system and saves the configuration such that the other packages (godi-ocaml, godi-ocaml-graphics, and godi-ocaml-labltk) can find it and use it. Maybe I should rename it to godi-ocaml-config to make this role clearer. > So then it was a bit of a mystery, how to rebuild godi-ocaml-src and > whatever depends on it. Nothing much happened when I ran 'godi_build > godi-ocaml-src' again, Because it thinks it is up to date. godi_build -force godi-ocaml-src would do it. Again a useful addition to the README file. > so I ran 'godi_delete godi-ocaml-src' and tried > again, whereupon it rebuilt from source and finished OK. So you were able to help yourself. > Now, presumably, godi-caml and godi-caml-graphics need to be rebuilt > as well. Doing "godi_build godi-ocaml" reports that the package is > already up-to-date. Doing "godi_delete godi-ocaml" fails because the > godi-ocaml-graphics package depends on it, so I did "godi_delete -f > godi-ocaml" to force the delete. The -f option allows you to break the system, and it is normally not a good idea. The -r option would have been right, because it deletes the dependent packages, too. > That worked, mostly, but gave some > warnings about directories that could not be removed because they aren't > empty, because of files still there for godi-ocaml-graphics. (OK, > that wasn't my brightest move, but I thought using -f would > recursively remove any packages that depend on godi-ocaml -- and that > did not happen). Yes, -r would do that. > Run "godi_delete godi-ocaml-graphics". Now doing > "godi_build godi-ocaml" rebuilds from source ... but it fails near the > end because a lib/ocaml/std-lib/ directory already exists. Remove > that and try again; now the build finishes OK. This is one of the problems with GODI: you normally cannot install over old files, because the installation routines are not intelligent enough. > Build godi-ocaml-graphics again; OK. And now building > godi-ocaml-labltk works just fine. Minimal testing suggests that the > executables are working well. ocamlbrowser runs OK. > > So, that's how it went for someone who knows Linux system admin well, > but has no experience with BSD packaging tools and almost no > experience with ocaml distribution/packaging. The "GODI" tools work > well, but I need a bit more information about their theory of > operation to understand how to recover when things go wrong. Well, the documentation is not complete enough. In principle, it works the same way as the NetBSD tools; maybe I should add an example how to do the installation steps manually, and add a pointer to the NetBSD docs. > I'd also > like to understand the role of the godi-ocaml-src package better, and > what sort of implicit dependencies other GODI ocaml packages have on > it. godi-ocaml-src unpacks the O'Caml sources, configures them, and creates a tar.gz archive of them, so other packages can extract the already configured source tree from it. > Overall, it's an impressive first cut at an easy to use package > management system for Ocaml. I hope the remaining difficulties can be resolved, so it would be easy for everybody. Gerd -- ------------------------------------------------------------ Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de ------------------------------------------------------------ ------------------- 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/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners