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 OAA20535; Mon, 28 May 2001 14:26:07 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id OAA20552 for ; Mon, 28 May 2001 14:26:06 +0200 (MET DST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.11.1/8.10.0) with ESMTP id f4SCQ4j07014; Mon, 28 May 2001 14:26:04 +0200 (MET DST) Received: (from xleroy@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id OAA20482; Mon, 28 May 2001 14:26:04 +0200 (MET DST) Date: Mon, 28 May 2001 14:26:04 +0200 From: Xavier Leroy To: wester@ilt.fhg.de Cc: caml-list@inria.fr Subject: Re: [Caml-list] Directory problems Message-ID: <20010528142604.C19801@pauillac.inria.fr> References: <200105231435.QAA24972@ilt.fhg.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0i In-Reply-To: <200105231435.QAA24972@ilt.fhg.de>; from wester@ilt.fhg.de on Wed, May 23, 2001 at 04:35:46PM +0200 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk > I have the VC++ port of Ocaml3.1 and cygwin installed. When I try to > make a custom toplevel with ocamlmktop including labltk the linker > alwasy looks for Tk83.lib and Tcl83.lib in the directory > c:\tcl\lib. But I have installed Tcl at another location. I tried to > set TCL_LIBRARY and TK_LIBRARY accordingly but this didn't change > anything. Yes, this is a problem with the new "autolink" feature in OCaml 3.01: you don't have to specify external C libraries, but their paths are hard-wired in the binary distribution (in the .cma file, actually). > The only workaround is to place the libs where the linker > is looking for. Another workaround is: ocamlc -noautolink -I +labltk labltk.cma \ -cclib -llabltk41 \my\path\to\tk83.lib \my\path\to\tcl83.lib > The second problem I have with cygwin make is that the ocaml tools > are not able to find files when absolute paths are given. For > example ../dir works but /cygdrive/d/projects/dir does not. I also > tried "d:\projects\dir" but this didn't work either. I can place the > *.cma or *.cmx files in a directory that I can reach without > specifying absolute paths but this is not the most elegant method. I believe this is a Cygwin problem. The Win32 port of OCaml doesn't do anything special with the file names given on the command line: they are passed straight to the Win32 system calls. Try invoking OCaml from a Windows "command" shell and see if it works. Cygwin does do all sorts of transformations over file names when a Cygwin program (e.g. bash) launches a non-Cygwin program (e.g. ocamlc). This is because Cygwin has its own view of the file system, with Unix-like mount points and so on. On some versions of Cygwin that I've used, these file name conversions are quite strange, if not downright buggy, e.g. the Win32 command does not receive the correct Win32 equivalent of the file specified on the command line. The only way I got it to work is to mount "C:\" on "/" and have all my files on C:. As usual with Cygwin, your mileage may vary... - Xavier Leroy ------------------- To unsubscribe, mail caml-list-request@inria.fr. Archives: http://caml.inria.fr