Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Mon, 19 May 2003 12:51:57 +0100 From: Mark Himsley To: Cygwin Subject: Re: Linux or DOS javac? Message-ID: <14981890.1053348717@[192.168.0.40]> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; FORMAT=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline --On 19 May 2003 20:55 +1000 Robert Mark Bram wrote: > Howdy All! > > I have found out that when I compile java code in cygwin, I have to make > sure that my classpath and file names are in DOS format. For example; > > CLASSPATH=".;C:\temp" javac "C:\temp\AuctionEntryImpl.java" > > I believe this is required because the javac that is being used is a > DOS/Windows javac and the file paths are translated. True. > My problem is that I am trying to install the Janos nodeos which has a > large set of build scripts that require Linux like paths, not DOS. My > reason for saying this is because I am getting error messages like this: > > error: cannot read: > /cygdrive/c/java/jnodeos-20020317/src/nodeos/Address.Java > > I take this to mean that the script is building Linux paths which are not > understood by the DOS javac. True. > If I have assumed correctly so far, can I download a Linux/Unix javac and > will it use the Linux paths ok? You say "download". Yes, of cause you can download a Linux/Unix Javac - just don't expect it to actually WORK on Windows. Remember, Cygwin is just a layer on top of Windows. You cannot run Linux binaries on Windows by using Cygwin. > I have examined some of the build scripts - it is not easy to change how > they deal with paths because they do a lot sed operations (for example) > and heaps of variable substitutions as part of their sanity checks. I would have guessed, without looking at all, that there are very few invocations of Javac. Leave the sed/variable substitution alone and look at patching the actual invocation of Javac with `cygpath -w "$directory"` and `cygpath -w -p "$CLASSPATH"`. Good luck. -- Mark Himsley -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/