I have consulted existing entries on SO related to my specific issue, but still could not resolve it.
I am trying to do this with my machine at work, where I have limited admin rights, but I can run Rtools.exe, so I installed it.
My setup for R is:
platform x86_64-w64-mingw32
arch x86_64
os mingw32
system x86_64, mingw32
version.string R version 3.3.0 (2016-05-03)
I am RStudion Version 0.99.902. I installed Rtools version 3.3.0.1959.
All of R, Rstudio, and Rtools are installed in C:/WORK/, which is where I have some limited admin rights.
In my system ENV variable, I have set up:
C:\\WORK\\Rtools\\bin; C:\\WORK\\Rtools\\gcc- 4.6.3\\bin; C:\\WORK\\R-3.3.0\\bin\\x64;"
When I run
system('where make')
I get
C:\WORK\Rtools\bin\make.exe
When I run
system('g++ -v')
I get:
Using built-in specs.
COLLECT_GCC=C:\WORK\Rtools\GCC-46~1.3\bin\G__~1.EXE
COLLECT_LTO_WRAPPER=c:/WORK/rtools/gcc-46~1.3/bin/../libexec/gcc/i686-w64- mingw32/4.6.3/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: /data/gannet/ripley/Sources/mingw-test3/src/gcc/configure --host=i686-w64-mingw32 --build=x86_64-linux-gnu --target=i686-w64-mingw32 --with-sysroot=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/mingw32 --prefix=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/mingw32 --with-gmp=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/prereq_install --with-mpfr=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/prereq_install --with-mpc=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/prereq_install --disable-shared --enable-static --enable-targets=all --enable-languages=c,c++,fortran --enable-libgomp --enable-sjlj-exceptions --enable-fully-dynamic-string --disable-nls --disable-werror --enable-checking=release --disable-win32-registry --disable-rpath --disable-werror CFLAGS='-O2 -mtune=core2 -fomit-frame-pointer' LDFLAGS=
Thread model: win32
gcc version 4.6.3 20111208 (prerelease) (GCC)
When I compile, I get this error:
Error in compileCode(f, code, language = language, verbose = verbose) :
Compilation ERROR, function(s)/method(s) not created!
c:/Rtools/mingw_64/bin/g++: not found
My question is: why is R still looking for g++ in
c:/Rtools/mingw_64/bin/g++
Didn't I already set R to look for it in
C:/WORK/Rtools?
Even when I manually added
c:/WORK/Rtools/mingw_64/bin/g++
in the ENV variable, I still got the same error. (I cannot make Rtools folder in C:/ due to admin rights.)
Has anyone run into this specific issue?
The path c:/Rtools/mingw_64/bin/
is hard-coded into the file Makeconf
located somewhere in the R installation (in my case C:\Progs\R\R-3.4.1\etc\x64
), as the value of the variable BINPREF.
The easiest thing to do is to change this path to your path C:/WORK/Rtools/bin
(in my case was C:/Progs/RTools/3.4/mingw_64/bin/
). That worked for me in a fresh installation of R-3.4.1 and Rtools3.4, and a minimal example.
What is happening is the need to be on RTools 34 and NOT 33 for R 3.3.x.
Remove the rtools install and then follow the guide here:
http://thecoatlessprofessor.com/programming/rcpp/install-rtools-for-rcpp/
@David, you need to remove all instances of C:\WORK\Rtools\<something>
and any duplicates (e.g. C:\WORK\R-3.3.0\bin\x64
appears twice.) Then add:
c:\WORK\Rtools\bin; c:\WORK\Rtools\mingw_32\bin;
I was hitting the same issue on Windows 10 with RStudio 1.3+ and RTools 4.0. After installing RTools and trying to install another package (that needed RTools) it kept throwing the error
c:/rtools40/mingw32/bin/g++: No such file or directory
It kept picking up the wrong path of the RTools installation on windows. After restarting RStudio it picked up the right path:
C:\RBuildTools\4.0\mingw32\bin
A plausible and easy way to do this is to choose "Full installation to build 32 or 64 bit" in the following promp.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With