[R] Issues with TMPDIR/TEMP/TMP? Failure of R CMD check under Windows 7

Ulrike Grömping groemping at bht-berlin.de
Mon Feb 25 18:38:20 CET 2013

Am 25.02.2013 18:21, schrieb Gabor Grothendieck:
> On Mon, Feb 25, 2013 at 2:10 AM, Ulrike Grömping
> <groemping at bht-berlin.de> wrote:
>> Gabor,
>> thanks for your patient answers! I have adjusted the Rtools path to consist
>> of both
>> the bin and the gcc-4.6.3 sub directory, and that did it. The R path was set
>> by R as it was,
>> presumably because this is only a 32-bit system, and everything worked with
>> that R path, as there is also an R.exe in the path without the i386.
>> I have no idea what these path settings might have to do with write
>> permissions on the temp directory, but as long as it works ...
>> Best, Ulrike
>> Am 25.02.2013 01:29, schrieb Gabor Grothendieck:
>>> On Sun, Feb 24, 2013 at 6:34 PM, Ulrike Grömping
>>> <groemping at bht-berlin.de> wrote:
>>>> Am 24.02.2013 23:50, schrieb Gabor Grothendieck:
>>>>> On Sun, Feb 24, 2013 at 4:00 PM, Ulrike Grömping
>>>>> <groemping at bht-berlin.de> wrote:
>>>>>> Dear helpeRs,
>>>>>> on my Windows 7 laptop, I have problems getting R CMD check to work. I
>>>>>> believe it did work completely before, but I am not sure.
>>>>>> Yesterday it almost worked, except for the tests: These were aborted
>>>>>> because
>>>>>> of a complaint that the temporary directory wasn't available. I played
>>>>>> with
>>>>>> windows environment variables for the temporary directory, but that
>>>>>> didn't
>>>>>> solve it. Apparently I did something that made things worse:
>>>>>> Today, R CMD check completely refuses to work, with the error message
>>>>>> "Fatal
>>>>>> error: creation of tmpfile failed -- set TMPDIR suitably?" This is the
>>>>>> same
>>>>>> for current R and R-devel. Changes to the TEMP or TMP environment
>>>>>> variable
>>>>>> don't influence this behavior.
>>>>>> The path:
>>>>>> C:\Rtools;C:\Program Files\Dell\DW WLAN Card;C:\Program
>>>>>> Files\R\R-2.15.2\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
>>>>>> Files\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files\WIDCOMM\Bluetooth
>>>>>> Software\;C:\Program Files\Calibre2\;C:\Program Files\MiKTeX
>>>>>> 2.9\miktex\bin\;C:\Program Files\TortoiseSVN\bin
>>>>>> Any ideas what I can do to fix this?
>>>>>> Perhaps also relevant: I run R CMD check from a DOS window that is
>>>>>> opened
>>>>>> with administrator rights.
>>>>> 1. Remove the paths to Rtools and to R in PATH since they don't look
>>>>> correct.
>>>>> 2. Enter this from the Windows cmd line:
>>>>> SET U
>>>>> SET T
>>>>> and it should show that TMP is set to %userprofile%\AppData\Local\Temp
>>>>> and that TEMP is set to the same thing and TMPDIR is not listed.
>>>>> If not change them so that it so reads.
>>>>> 3. Once you have done all the above then place this file anywhere on
>>>>> your
>>>>> path
>>>>> https://batchfiles.googlecode.com/svn/trunk/R.bat
>>>>> The following will find R using the registry or if its not there it
>>>>> will look in the usual places and then run it so you can then try:
>>>>> R.bat CMD ...whatever...
>>>>> If that still does not work proceed to the following manual alternative:
>>>>> 4. If the above did not fix the problem download this file
>>>>> https://batchfiles.googlecode.com/svn/trunk/Rpathset.bat
>>>>> 5. edit the SET statements in it and then place it on your Windows path.
>>>>> 6. Now run it from the cmd line:
>>>>> Rpathset.bat
>>>>> and for the rest of that cmd line session your path should be set up
>>>>> correctly.
>>>>> Also you might want to read:
>>>>> https://batchfiles.googlecode.com/svn/trunk/batchfiles.md
>>>>> There is also a new discussion group just set up at
>>>>> https://groups.google.com/forum/?fromgroups#!forum/sqldf
>>>>> that is also being used for the batchfiles.
>>>> Thanks, I followed your advice, and the check ran from the R.bat; also,
>>>> the
>>>> R Gui was usable again. After re-adding the paths to Rtools and R
>>>> manually
>>>> (I think they were correct anyway), I am back to the sunday state: R Gui
>>>> runs fine, the check is run, except for the tests where the complaint is:
>>>> cannot open file
>>>> 'c:\Users\GROEMP~1\AppData\Local\Temp\Rtmp8kETwo\file15d8714c5215':
>>>> Permission denied
>>>> (Of course, the proper path is with groemping instead of GROEMP~1; the
>>>> abbreviation is done automatically by R CMD check or Windows.)
>>>>   From the Dos box, I can cd to that directory (both long name and
>>>> abbreviated
>>>> name), and there is a 0 byte file of the name in the complaint. From the
>>>> Windows 7 Explorer, I don't know how to change to that directory, except
>>>> for
>>>> a search for the file name. Once I have found the file name, I can edit
>>>> and
>>>> change the file without being stopped from doing so, thus this does not
>>>> seem
>>>> to be an issue of write permissions.
>>>> Any idea how to fix this, without a re-installation (that might not fix
>>>> it
>>>> either, if I am unlucky)?
>>>> And, by the way, do others agree with Jeff's advice (thanks, Jeff!) that
>>>> it
>>>> is preferrable not to install and run R with administrator rights?
>>>> Best, Ulrike
>>> 1. There is something wrong with the permissions on the TEMP directory
>>> unrelated to R. Remove everything in that directory and make sure that
>>> you have write permission on TEMP.  Its probably easier to do that
>>> through Windows Explorer.
>>> 2. Regarding the comment on the paths, I don't think the Tools or R
>>> paths were correct. The tools path should end end in bin but it did
>>> not. Also there are additional components for gcc that I think were
>>> missing.   Also the R path ends in x64 (or i386 if you want 32 bit)
>>> but yours ended in bin.  Note that if you use R.bat or Rpathset.bat
>>> consistently you don't have to set up your path in the first place.
>>> Its basically configuration-free.
>>> R.bat show
>>> will show the values its heuristic found.
>>> 3. Regarding Admin rights I think its best to keep everything as
>>> standard as possible which means installing R itself into C:\Program
>>> Files\... tree which is where it goes by default and that requires
>>> Admin rights to do.
> On my machine Rgui.exe is found in ..\bin\x64 and the 32 bit version
> is found in ..\bin\i386 and there is no Rgui.exe in ...\bin .  Ditto
> for RSetReg.exe, Rterm.exe and maybe a few others.  Thus if yours is
> the same then using a path to R ending in bin still won't let you run
> Rgui.exe (and ditto for a few other executables) from the cmd line.
> --
> Statistics & Software Consulting
> GKX Group, GKX Associates Inc.
> tel: 1-877-GKX-GROUP
> email: ggrothendieck at gmail.com
That's probably true, but I never run the GUI from command line, I 
always use the icons on the desktop that point to the correct exe.
All I ever use from the command line is R CMD build, check and INSTALL, 
which works fine with that path.

Best, Ulrike

More information about the R-help mailing list