[Rd] cygwin tar?
Tony Plate
tplate at blackmesacapital.com
Wed Mar 17 23:49:41 MET 2004
At Wednesday 05:39 AM 3/17/2004, Prof Brian Ripley wrote:
>On Wed, 17 Mar 2004, Martyn Plummer wrote:
>
> > I had the same problem as Tony with multiple copies of cygwin1.dll. But
> > doesn't this solution (renaming cygwin1.dll in the tools directory) just
> > link the tools with the cygwin1.dll that comes with cygwin? In which
> > case will it work if the tools are linked against a different version of
> > the cygwin1 library?
>
>It may or it may not. At least some cygwin1.dll's are broken and cause
>tar to malfunction.
>
>I don't uninstall cygwin, but I do ensure that its path is not mounted,
>since if it thinks there is a /bin/cygwin1.dll or /usr/bin/cygwin1.dll it
>complains, even if that is really C:/packages/usr/bin/cygwin1.dll and not
>in your path.
To build R from source in a Windows system, do you 'make' from cygwin bash,
or from a Windows command line prompt? After reading
src/gnuwin32/{INSTALL,readme,readme.packages} and the rw-FAQ, I strongly
suspect the shell commands in there are are intended to be run from only
the Windows command line prompt. I couldn't find any explicit mention of
which shell to use, but in rw-FAQ and readme.packages, the 'cd' commands
(at least those intended for execution on Windows systems) all use backward
slashes, which implies Windows command line. In src/gnuwin32/INSTALL, the
'cd' commands have forward slashes, which only works with a unix-style
shell, like bash. However I suspect those are typos.
Also, what did you mean by "ensure that its path is not mounted"? I tried
'umount'ing the various /bin etc directories, but still got the cygwin1.dll
conflict error when trying to run .exe's from R/tools from the cygwin bash
prompt (with no cygwin system directories on my path).
# in cygwin, after doing 'umount' on all the cygwin system directories
$ c:/cygwin/bin/mount
C:\cygwin\usr\X11R6\lib\X11\fonts on /usr/X11R6/lib/X11/fonts type system
(binmo
de)
c: on /cygdrive/c type user (textmode,noumount)
e: on /cygdrive/e type user (textmode,noumount)
f: on /cygdrive/f type user (textmode,noumount)
h: on /cygdrive/h type user (textmode,noumount)
$ type -a cygwin1.dll
cygwin1.dll is /cygdrive/c/R/tools/cygwin1.dll
$ echo $PATH
.:/cygdrive/c/R/tools:/cygdrive/c/MinGW/bin:/cygdrive/c/texmf/miktex/bin:/cygdri
ve/c/Perl/bin/cygdrive/c/Program Files/Html Help
Workshop:/cygdrive/c/gstools/gs
/gs7.03/bin:/cygdrive/c/R/rw1080/bin
$ ls
c:\R\tools\ls.exe: *** proc version mismatch detected - 0x1E4C5751/0x8E0899FA.
You have multiple copies of cygwin1.dll on your system.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version. The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution.
(All this is using a pretty up-to-date cygwin (downloaded in the last month
or so) under Windows 2000).
-- Tony Plate
More information about the R-devel
mailing list