From aseila at gmail.com  Wed Jul 15 19:25:16 2009
From: aseila at gmail.com (aseila at gmail.com)
Date: Wed, 15 Jul 2009 19:25:16 +0200 (CEST)
Subject: [Rd] dir.create not working correctly under Solaris (PR#13834)
Message-ID: <20090715172516.6399C282BE84@mail.pubhealth.ku.dk>

Full_Name: Andy Seila
Version: 2.9.1-patched
OS: Solaris 10 x86
Submission from: (NULL) (66.156.94.118)


When compiling R under a user's home directory that is mounted by the
automounter, R cannot create directories using dir.create() with
"recursive=TRUE".  This causes the build to exit with an error when attempting
to install package VR.  If R is built and installed under a user's home
directory that is automounted, additional packages cannot be installed using "R
CMD INSTALL" because the R script calls dir.create() with "recursive=TRUE).

Here is some output with R-patched_2009-07-06: (The working directory is
/home/andy/temp)

> dir.create("/home/andy/temp/bob", recursive=TRUE)
Warning message:
In dir.create("/home/andy/temp/bob", recursive = TRUE) :
  cannot create dir '/home/andy', reason 'Operation not applicable'
> system("ls")
> dir.create("/home/andy/temp/bob/bill", recursive=TRUE)
Warning message:
In dir.create("/home/andy/temp/bob/bill", recursive = TRUE) :
  cannot create dir '/home/andy', reason 'Operation not applicable'
> system("ls")
> dir.create("/home/andy/temp/bob", recursive=FALSE)
> system("ls")
bob
> dir.create("/home/andy/temp/bob/bill", recursive=FALSE)
> system("ls bob")
bill
> system("rm -rf bob")
> system("ls")
> dir.create("bob", recursive=TRUE)
> system("ls")
bob
> system("rm -rf bob")
> dir.create("bob/bill", recursive=TRUE)
> system("ls")
bob
> system("ls bob")
bill

A workaround is to build and install R under directories that are not
automounted.  If the directory /export/home/<user> is mounted on /home/<user>,
another solution is to cd to /export/home/<user> before building R.  However,
many systems automount a directory accessed through nfs and this workaround is
not an option.  Regardless, if R is installed under /home/<user> and
/home/<user> is automounted, additional packages cannot be installed.



[Rd] dir.create not working correctly under Solaris (PR#13834)
aseila at gmail.com