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 mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id B2E68BC69 for ; Tue, 25 Sep 2007 13:45:47 +0200 (CEST) X-IronPort-AV: E=Sophos;i="4.20,295,1186351200"; d="scan'208";a="3222976" Received: from peray.inria.fr (HELO ausone.inria.fr) ([128.93.8.98]) by mail3-relais-sop.national.inria.fr with SMTP; 25 Sep 2007 13:45:47 +0200 Received: by ausone.inria.fr (sSMTP sendmail emulation); Tue, _d Sep 2007 13:45:19 +0200 From: "Nicolas Pouillard" Cc: nicolas.pouillard , caml-list Subject: Re: [Caml-list] ocamlbuild To: skaller References: <1188981406.28332.15.camel@rosella.wigram> <1190029963-sup-259@ausone.inria.fr> <1190046094.6058.26.camel@rosella.wigram> In-Reply-To: <1190046094.6058.26.camel@rosella.wigram> Date: Tue, 25 Sep 2007 13:45:18 +0200 Message-Id: <1190720253-sup-6791@port-ext11.ensta.fr> User-Agent: Sup/0.1 Content-Type: text/plain; charset=utf-8 X-Spam: no; 0.00; 0200,:01 ocaml:01 cmo:01 cmi:01 usr:01 lib:01 ocaml:01 foolib:01 usr:01 lib:01 foolib:01 wrote:01 unix:01 symbolic:01 symbolic:01 Excerpts from skaller's message of Mon Sep 17 18:21:34 +0200 2007: > On Mon, 2007-09-17 at 13:56 +0200, Nicolas Pouillard wrote: > > Excerpts from skaller's message of Wed Sep 05 10:36:46 +0200 2007: > > > hi .. I've got an ocamlbuild project which is hanging > > > forever. Top shows 100% CPU and 2% memory. Any ideas how > > > this could happen? > > > > > > I have a suspicion ocamlbuild can't handle directories > > > properly.. > > > > > > > Are you on windows? If yes what kind of environment you have and what OCaml > > you have. > > > > If it's Unix, have you symbolic links that make cycles (this case has been > > handled, but I cannot see something else). > > > > Can you also try it with -no-sanitize. Have you try this, since this part can be very time consuming. > Our build system is portable, we need Ocamlbuild code to also be > entirely portable. We know at present it doesn't work on Windows. > But the problem is on Linux. > > Now, I have no idea what the problem was because I deleted the entire > workspace and re-created it from the repository and it went away. > We don't make any symbolic links because the script is portable, > and you can't make them on Windows. > > So just keep an eye out for someone having a similar problem. Is you source tree very big? > Erick reports another issue: ocamlbuild tries to rebuild > libraries a code depends on -- but not the system libraries. Yes it even don't know that's system libraries. > The idea of building a library is to *avoid* having to do > any dependency checking on the module level. Is there some > way to fix this? I.e, to 'make' a library, and then have > it treated as a 'system' library. Yes you can do it by showing it the directory with compiled files. Then you have to explain it that all these .cmo,.cmi... are not junk files. Example of using a library in /usr/lib/ocaml/foolib $ ln -s /usr/lib/ocaml/foolib foolib $ cat _tags "foolib": include, precious The first tag (include) is equivalent to a `-I foolib' given to ocamlbuild. The second tag (precious, also known as not_hygienic) tell him to don't report these files as junk and propose their deletion. Regards, -- Nicolas Pouillard aka Ertai