r-lib / pkgbuild

Find tools needed to build R packages
https://pkgbuild.r-lib.org
Other
65 stars 33 forks source link

find_rtools() returns true, has_rtools() returns true but unable to build packages from source on Windows. #72

Closed rileytwo closed 5 years ago

rileytwo commented 5 years ago

Hi,

I'm unable to compile any packages from source in Windows, in spite of Rtools being installed and included in PATH variables. While find_rtools() returns TRUE, check_compiler() and check_build_tools() both prompt a dialogue asking me to download Rtools, even though it is already installed at C:\Rtools.

I've tried the following:

Some links mentioned the need to set BINPREF in the environment. This is what I placed in my environment:

BINPREF=C:\\Rtools\\mingw_64\\bin\\

After many unsuccessful attempts at fixes from sources across the internet (I can link to everything I've tried if needed), I decided to try and download Rtools from the prompt that appears after pkgbuild::check_compiler(). Now, PATH looks like this:

After trying pkgbuild::check_compiler() after the newly installed RBuildTools, I'm asked again if I'd like to download Rtools since check_compiler() was unable to find the Rtools that was just installed.

I've tried prepending the C:\Rtools\bin and C:\Rtools\mingw_64\bin at the startup of R by including some extra lines in my .Rprofile:

Sys.setenv(PATH = paste(
    "C:\\RBuildTools\\3.5\\bin",
    "C:\\RBuildTools\\3.5\\mingw_${WIN}\\bin",
    "C:\\Rtools\\bin",
    "C:\\Rtools\\mingw_64\\bin",
    Sys.getenv("PATH"),
    sep = ";"
))
Sys.setenv(BINPREF = "C:\\Rtools\\mingw_64\\bin\\")

Here's a reprex of the output:

...

``` r pkgbuild::has_rtools(TRUE) #> Scanning R CMD config CC... #> cc_path: C:\Rtools\mingw_64\bin\gcc #> install_path: C:/Rtools #> VERSION.txt #> Rtools version 3.5.0.4 #> Found compatible gcc from R CMD config CC #> [1] TRUE pkgbuild::compiler_flags(TRUE) #> CFLAGS CXXFLAGS #> "-UNDEBUG -Wall -pedantic -g -O0" "-UNDEBUG -Wall -pedantic -g -O0" #> CXX11FLAGS FFLAGS #> "-UNDEBUG -Wall -pedantic -g -O0" "-g -O0" #> FCFLAGS #> "-g -O0" pkgbuild::check_build_tools() pkgbuild::rcmd_build_tools(TRUE) #> The system cannot find the path specified. #> 'TRUE' is not recognized as an internal or external command, #> operable program or batch file. #> pkgbuild::setup_rtools(TRUE) #> Scanning R CMD config CC... #> cc_path: C:\Rtools\mingw_64\bin\gcc #> install_path: C:/Rtools #> VERSION.txt #> Rtools version 3.5.0.4 #> Found compatible gcc from R CMD config CC #> [1] TRUE pkgbuild::check_compiler(TRUE) #> Trying to compile a simple C file #> Running "C:/PROGRA~1/R/R-3.5.3/bin/x64/Rcmd.exe" SHLIB foo.c #> The system cannot find the path specified. #> C:\Rtools\mingw_64\bin\gcc -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG -O2 -Wall -std=gnu99 -mtune=generic -c foo.c -o foo.o #> sh: C:Rtoolsmingw_64bingcc: command not found #> make: *** [C:/PROGRA~1/R/R-3.5.3/etc/x64/Makeconf:208: foo.o] Error 127 #> Error: Failed to compile C code ``` Created on 2019-04-19 by the [reprex package](https://reprex.tidyverse.org) (v0.2.1)

Here's the output from Sys.getenv():

...

```r Sys.getenv() #> __COMPAT_LAYER RunAsAdmin Installer #> ALLUSERSPROFILE C:\ProgramData #> APPDATA C:\Users\RRoach\AppData\Roaming #> BINPREF C:\Rtools\mingw_64\bin\ #> CALLR_CHILD_R_LIBS C:/Users/RRoach/Documents/R/win-library/3.5;C:/Program #> Files/R/R-3.5.3/library #> CALLR_CHILD_R_LIBS_USER #> C:/Users/RRoach/Documents/R/win-library/3.5;C:/Program #> Files/R/R-3.5.3/library #> ChocolateyInstall C:\ProgramData\chocolatey #> CLICOLOR_FORCE 1 #> CLINK_DIR C:\Program Files (x86)\clink\0.4.8 #> COMMANDER_PATH C:\Program Files\totalcmd #> CommonProgramFiles C:\Program Files\Common Files #> CommonProgramFiles(x86) #> C:\Program Files (x86)\Common Files #> CommonProgramW6432 C:\Program Files\Common Files #> COMPUTERNAME RROACH-LAT #> ComSpec C:\WINDOWS\system32\cmd.exe #> CYGWIN nodosfilewarning #> DISPLAY :0 #> DriverData C:\Windows\System32\Drivers\DriverData #> FOLDER_MARKER_DIR C:\Program Files (x86)\Folder Marker #> GFORTRAN_STDERR_UNIT #> -1 #> GFORTRAN_STDOUT_UNIT #> -1 #> GIT_ASKPASS rpostback-askpass #> HOME C:/Users/RRoach/Documents #> HOMEDRIVE C: #> HOMEPATH \Users\RRoach #> I_MPI_ROOT C:\Program Files #> (x86)\IntelSWTools\compilers_and_libraries_2018.3.210\windows\mpi #> INTEL_LICENSE_FILE C:\Program Files (x86)\Common #> Files\Intel\Licenses #> LOCALAPPDATA C:\Users\RRoach\AppData\Local #> LOGONSERVER \\CORPDC #> MSMPI_BIN C:\Program Files\Microsoft MPI\Bin\ #> MSYS2_ENV_CONV_EXCL R_ARCH #> npm C:\Users\RRoach\AppData\Roaming\npm #> NUMBER_OF_PROCESSORS #> 4 #> OneDrive C:\Users\RRoach\Documents\OneDrive - #> IMODULES SOFTWARE #> OneDriveCommercial C:\Users\RRoach\Documents\OneDrive - #> IMODULES SOFTWARE #> OPENSSL_CONF C:\Users\RRoach\scoop\apps\openssl\current\bin\cnf\openssl.cnf #> OS Windows_NT #> PATH C:\RBuildTools\3.5\bin\;C:\RBuildTools\3.5\mingw_64\bin\;C:\Rtools\bin\;C:\Rtools\mingw_64\bin\;C:\RBuildTools\3.5\bin;C:\RBuildTools\3.5\bin\;C:\RBuildTools\3.5\mingw_64\bin\;C:\Rtools\bin\;C:\Rtools\mingw_64\bin\;C:\RBuildTools\3.5\bin\;C:\RBuildTools\3.5\mingw_64\bin\;C:\Rtools\bin\;C:\Rtools\mingw_64\bin\;C:\RBuildTools\3.5\bin;C:\Program #> Files\R\R-3.5.3\bin\x64;C:\RBuildTools\3.5\bin;C:\RBuildTools\3.5\mingw_64\bin;C:\Rtools\bin;C:\Rtools\mingw_64\bin;C:\Program #> Files\MiKTeX 2.9\miktex\bin;C:\Program #> Files\R\R-3.5.3\bin;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program #> Files\Microsoft MPI\Bin\;C:\Program Files #> (x86)\IntelSWTools\compilers_and_libraries_2018.3.210\windows\mpi\intel64\bin;C:\Program #> Files (x86)\Intel\iCLS Client\;C:\Program #> Files\Intel\iCLS Client\;C:\Program Files #> (x86)\Intel\Intel(R) Management Engine #> Components\DAL;C:\Program #> Files\Intel\Intel(R) Management Engine #> Components\DAL;C:\Program Files #> (x86)\Intel\Intel(R) Management Engine #> Components\IPT;C:\Program #> Files\Intel\Intel(R) Management Engine #> Components\IPT;C:\Program #> Files\PuTTY\;C:\Program Files #> (x86)\Shoreline Communications\ShoreWare #> Client\;C:\Program Files (x86)\Shoreline #> Communications\ShoreWare #> Client\win64;C:\Program Files #> (x86)\Google\Google Apps #> Sync\;C:\WINDOWS\System32\OpenSSH\;C:\Program #> Files\dotnet\;C:\Program Files\Microsoft SQL #> Server\130\Tools\Binn\;C:\ProgramData\chocolatey\bin;C:\Program #> Files\Git\cmd;C:\Program Files #> (x86)\Pandoc\;C:\Program Files\MiKTeX #> 2.9\miktex\bin\x64\;C:\Program Files #> (x86)\Microsoft SQL Server\Client #> SDK\ODBC\130\Tools\Binn\;C:\Program Files #> (x86)\Microsoft SQL #> Server\140\Tools\Binn\;C:\Program Files #> (x86)\Microsoft SQL #> Server\140\DTS\Binn\;C:\Program Files #> (x86)\Microsoft SQL #> Server\140\Tools\Binn\ManagementStudio\;C:\Program #> Files\PowerShell\6\;C:\Program #> Files\nodejs\;C:\Users\RRoach\AppData\Roaming\npm;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Users\RRoach\scoop\apps\openssl\current\bin;C:\Users\RRoach\AppData\Local\GitHubDesktop\bin;C:\Users\RRoach\AppData\Local\Programs\Microsoft #> VS #> Code\bin;C:\Users\RRoach\AppData\Local\Microsoft\WindowsApps;C:\Users\RRoach\AppData\Local\Microsoft\WindowsApps;C:\Users\RRoach\AppData\Local\Continuum\miniconda3;C:\Users\RRoach\AppData\Local\Continuum\miniconda3\Scripts #> PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC #> PROCESSOR_ARCHITECTURE #> AMD64 #> PROCESSOR_IDENTIFIER #> Intel64 Family 6 Model 142 Stepping 9, #> GenuineIntel #> PROCESSOR_LEVEL 6 #> PROCESSOR_REVISION 8e09 #> PROCESSX_PS2E386TXRBG_1555694020 #> YES #> ProgramData C:\ProgramData #> ProgramFiles C:\Program Files #> ProgramFiles(x86) C:\Program Files (x86) #> ProgramW6432 C:\Program Files #> prompt [RROACH-LAT] $d$s$t$_$p$_$+$g #> PSModulePath C:\Program #> Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules #> PUBLIC C:\Users\Public #> QT_D3DCREATE_MULTITHREADED #> 1 #> R_ARCH /x64 #> R_BROWSER false #> R_COMPILED_BY gcc 4.9.3 #> R_DOC_DIR C:/PROGRA~1/R/R-3.5.3/doc #> R_ENVIRON C:\Users\RRoach\AppData\Local\Temp\RtmpEV0JgU\file235834f66e2b #> R_ENVIRON_USER C:\Users\RRoach\AppData\Local\Temp\RtmpEV0JgU\file235874bb5c1f #> R_HOME C:/PROGRA~1/R/R-3.5.3 #> R_LIBS C:/Users/RRoach/Documents/R/win-library/3.5;C:/Program #> Files/R/R-3.5.3/library #> R_LIBS_USER C:/Users/RRoach/Documents/R/win-library/3.5;C:/Program #> Files/R/R-3.5.3/library #> R_PDFVIEWER false #> R_PROFILE C:\Users\RRoach\AppData\Local\Temp\RtmpEV0JgU\file2358339159e9 #> R_PROFILE_USER C:\Users\RRoach\AppData\Local\Temp\RtmpEV0JgU\file235879721c8d #> R_USER C:/Users/RRoach/Documents #> RMARKDOWN_MATHJAX_PATH #> C:/Program #> Files/RStudio/resources/mathjax-26 #> RS_LOCAL_PEER \\.\pipe\25185-rsession #> RS_RPOSTBACK_PATH C:/Program Files/RStudio/bin/rpostback #> RS_SHARED_SECRET 63341846741 #> RSTUDIO 1 #> RSTUDIO_CONSOLE_COLOR #> 256 #> RSTUDIO_CONSOLE_WIDTH #> 173 #> RSTUDIO_MSYS_SSH C:/Program #> Files/RStudio/bin/msys-ssh-1000-18 #> RSTUDIO_PANDOC C:/Program Files/RStudio/bin/pandoc #> RSTUDIO_SESSION_PORT #> 25185 #> RSTUDIO_USER_IDENTITY #> RRoach #> RSTUDIO_WINUTILS C:/Program Files/RStudio/bin/winutils #> RTOOLS40_HOME C:\rtools40 #> SSH_ASKPASS rpostback-askpass #> SystemDrive C: #> SystemRoot C:\WINDOWS #> TEMP C:\Users\RRoach\AppData\Local\Temp #> TERM xterm-256color #> TMP C:\Users\RRoach\AppData\Local\Temp #> USERDNSDOMAIN LOCAL.IMODULES.COM #> USERDOMAIN LOCAL #> USERDOMAIN_ROAMINGPROFILE #> LOCAL #> USERNAME RRoach #> USERPROFILE C:\Users\RRoach #> VS140COMNTOOLS C:\Program Files (x86)\Microsoft Visual #> Studio 14.0\Common7\Tools\ #> VS2017INSTALLDIR C:\Program Files (x86)\Microsoft Visual #> Studio\2017\Community #> windir C:\WINDOWS ``` Created on 2019-04-19 by the [reprex package](https://reprex.tidyverse.org) (v0.2.1)

Any help would be greatly appreciated!

cderv commented 5 years ago

I already has that kind of problem in the past. with the IDE. This could be related to rstudio/rstudio#3563 There were some fixes but not sure they apply to pkgbuild.

First I think you need to clean think up a bit.

> PATH C:\RBuildTools\3.5\bin\;C:\RBuildTools\3.5\mingw_64\bin\;C:\Rtools\bin\;C:\Rtools\mingw_64\bin\;C:\RBuildTools\3.5\bin;C:\RBuildTools\3.5\bin\;C:\RBuildTools\3.5\mingw_64\bin\;C:\Rtools\bin\;C:\Rtools\mingw_64\bin\;C:\RBuildTools\3.5\bin\;C:\RBuildTools\3.5\mingw_64\bin\;C:\Rtools\bin\;C:\Rtools\mingw_64\bin\;C:\RBuildTools\3.5\bin;C:\Program

> Files\R\R-3.5.3\bin\x64;C:\RBuildTools\3.5\bin;C:\RBuildTools\3.5\mingw_64\bin;C:\Rtools\bin;C:\Rtools\mingw_64\bin;C:\Program

You have a lot of duplicates in your PATH and you point to Rbuiltools AND Rtools. So things are mixed up. Choose just one of the installation (and uninstall the other) In your PATH you should just need C:\RBuildTools\3.5\bin or the other C:\Rtools\bin

Also, from your error messages, I think you need to correct the syntax of your paths. For example, I know that you need to use / not \ in BINPREF

Please, can you try again after changing BINPREF = C:\Rtools\mingw_64\bin\ to BINPREF=C:/Rtools/mingw_64/bin and even BINPREF=C:/Rtools/mingw_${WIN}/bin (this should dynamically choose the correct type)

I know it is something I had to do and the source of this error I think.

#> sh: C:Rtoolsmingw_64bingcc: command not found

\ are removed because they are not understood by linux-like tools

Can you try all this so that we can have a clean state to try some other things if it does not work. Thanks !

rileytwo commented 5 years ago

I was using my work PC when making the issue (I'm running macOS on my personal laptop), so I won't be able to provide any output from the suggestions you made. I will once I'm back at work.

For more context, I should also say that I was trying to install packages using remotes::install_github() and devtools::install_github(). Both were unsuccessful and prompted me to download and install Rtools.

The path is admittedly a mess. While there are duplicates, I was careful in placing C:\RBuildTools\3.5\bin; and C:\RBuildTools\3.5\mingw_64\bin; after one another, following them with C:\Rtools\bin; and C:\Rtools\mingw_64\bin;. My hope was this would solve any "command not found errors" I was having.

I did find that using forward slashes in BINPREF=C:/Rtools/mingw_64/bin solved this error.

#> sh: C:Rtoolsmingw_64bingcc: command not found

Although, I was getting the same problem with a fixed path.

#> sh: C:/Rtools/mingw_64/bin/gcc: command not found

I did try making BINPREF dynamic by using BINPREF=C:/Rtools/mingw_${WIN}/bin, but I wasn't sure if it was necessary? I only installed a 64-bit version of R, and from what I could gather, I would be using /mingw_64/ and not /mingw_32/.

However, I was able to find some kind of workaround. I cloned r-lib/rlang locally and set the working directory to the clone's directory. Running remotes::install_local(), I was able to successfully build and install the package (although I there was a warning saying that the installation had a non-zero exit status).

So I'm wondering if remotes::install_github() and devtools::install_github() detect RTools differently than remotes::install_local() and devtools::install_local()?

I already has that kind of problem in the past. with the IDE. This could be related to rstudio/rstudio#3563 There were some fixes but not sure they apply to pkgbuild.

I tried running remotes::install_github() from the R console, so I'm not sure if RStudio is the cause if the problem.

cderv commented 5 years ago

thanks. we will see more once you'll get back to work.

I tried running remotes::install_github() from the R console, so I'm not sure if RStudio is the cause if the problem.

If you are running the command in the R console inside RStudio IDE, then this is linked. About the prompt from RStudio to download Rtools, you need to be sure to have the last version (1.2) as the issue I linked to in my previous answer was about that. If it is still does not work, you can do options(buildtools.check = NULL) to deactivate the buildtool check by RStudio and rely on the one by pkgbuild.

This is really something annoying and from my last issue I guessed there was still something off, so if we can go to the bottom of this, it would be nice! 👍

rileytwo commented 5 years ago

Unfortunately, no, I was not running the console from within RStudio when I ran remotes::install_github()--I was using the R GUI. I currently run the preview (v1.2.1502-1) and still have the problem. Since the R GUI reports an error as well, I'm not sure options(buildtools.check = NULL) will work, but I'll definitely give it a shot.

And yes, I'd love to help and get this fixed. It's a pain not being able to install packages from sources other than CRAN 😅

cderv commented 5 years ago

In R Gui, the option is not used. Just test if Rtools is found using pkgbuild::check_rtools(TRUE). Leave in your PATH nothing or just the bin directory. If not found set BINPREF. Make sure you uninstall previous version correctly because your registry could contain previous info. This should work correctly.

rileytwo commented 5 years ago

Alright, back in the office.

Here's my BINPREF and PATH:

Sys.getenv("BINPREF")
#> [1] "C:/Rtools/mingw_64/bin/"

Created on 2019-04-22 by the reprex package (v0.2.1)

Sys.getenv("PATH")
#> [1] "C:\\Program Files\\R\\R-3.5.3\\bin\\x64;C:\\Rtools\\bin\\;C:\\Rtools\\mingw_64\\bin\\;C:\\Program Files\\MiKTeX 2.9\\miktex\\bin\\;C:\\Program Files\\R\\R-3.5.3\\bin\\;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Microsoft MPI\\Bin\\;C:\\Program Files (x86)\\IntelSWTools\\compilers_and_libraries_2018.3.210\\windows\\mpi\\intel64\\bin;C:\\Program Files (x86)\\Intel\\iCLS Client\\;C:\\Program Files\\Intel\\iCLS Client\\;C:\\Program Files (x86)\\Intel\\Intel(R) Management Engine Components\\DAL;C:\\Program Files\\Intel\\Intel(R) Management Engine Components\\DAL;C:\\Program Files (x86)\\Intel\\Intel(R) Management Engine Components\\IPT;C:\\Program Files\\Intel\\Intel(R) Management Engine Components\\IPT;C:\\Program Files\\PuTTY\\;C:\\Program Files (x86)\\Shoreline Communications\\ShoreWare Client\\;C:\\Program Files (x86)\\Shoreline Communications\\ShoreWare Client\\win64;C:\\Program Files (x86)\\Google\\Google Apps Sync\\;C:\\WINDOWS\\System32\\OpenSSH\\;C:\\Program Files\\dotnet\\;C:\\Program Files\\Microsoft SQL Server\\130\\Tools\\Binn\\;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files\\Git\\cmd;C:\\Program Files (x86)\\Pandoc\\;C:\\Program Files\\MiKTeX 2.9\\miktex\\bin\\x64\\;C:\\Program Files (x86)\\Microsoft SQL Server\\Client SDK\\ODBC\\130\\Tools\\Binn\\;C:\\Program Files (x86)\\Microsoft SQL Server\\140\\Tools\\Binn\\;C:\\Program Files (x86)\\Microsoft SQL Server\\140\\DTS\\Binn\\;C:\\Program Files (x86)\\Microsoft SQL Server\\140\\Tools\\Binn\\ManagementStudio\\;C:\\Program Files\\PowerShell\\6\\;C:\\Program Files\\nodejs\\;C:\\Users\\RRoach\\AppData\\Roaming\\npm;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\;C:\\WINDOWS\\System32\\OpenSSH\\;C:\\Users\\RRoach\\scoop\\apps\\openssl\\current\\bin;C:\\Users\\RRoach\\AppData\\Local\\GitHubDesktop\\bin;C:\\Users\\RRoach\\AppData\\Local\\Programs\\Microsoft VS Code\\bin;C:\\Users\\RRoach\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\RRoach\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\RRoach\\AppData\\Local\\Continuum\\miniconda3;C:\\Users\\RRoach\\AppData\\Local\\Continuum\\miniconda3\\Scripts"

Created on 2019-04-22 by the reprex package (v0.2.1)

In R Gui, pkgbuild::check_rtools(TRUE):

pkgbuild::check_rtools(TRUE)
#> Scanning R CMD config CC...
#> cc_path: C:/Rtools/mingw_64/bin/gcc 
#> install_path: C:/Rtools 
#> VERSION.txt
#> Rtools version 3.5.0.4 
#> Found compatible gcc from R CMD config CC
#> [1] TRUE

Created on 2019-04-22 by the reprex package (v0.2.1)

In RStudio, pkgbuild::check_rtools(TRUE):

pkgbuild::check_rtools(TRUE)
#> Scanning R CMD config CC...
#> cc_path: C:/Rtools/mingw_64/bin/gcc 
#> install_path: C:/Rtools 
#> VERSION.txt
#> Rtools version 3.5.0.4 
#> Found compatible gcc from R CMD config CC
#> [1] TRUE

Created on 2019-04-22 by the reprex package (v0.2.1)

Before I created this issue I uninstalled R and removed the registry entries detailed here:

2.17 Does R use the Registry?

Not when R itself is running.

When you run the R installer, there are options (under ‘Select Additional Tasks’) to ‘Save version number in registry’ and (for Administrator installs) ‘Associate R with .RData files’.

If you tick the first option, the following string entries are added to the Windows registry:

HKEY_LOCAL_MACHINE\Software\R-core\R\Current Version contains the version number, currently 3.5.3. HKEY_LOCAL_MACHINE\Software\R-core\R[version]\InstallPath (where [version] is currently 3.5.3) contains the path to the R home directory.

If you do not have administrative privileges on the machine while running the installer, then the entries are created under HKEY_CURRENT_USER. The same entries are also created under Software\R-core\R32 or Software\R-core\R64, for 32- and 64-bit R respectively.

If you tick the second option (shown with administrative privileges only) (‘Associate R with .RData files’) then entries are created under HKEY_CLASSES_ROOT.RData and HKEY_CLASSES_ROOT\RWorkspace.

After installation you can add the Registry entries by running RSetReg.exe in a sub-folder of the bin folder, and remove them by running this with argument /U. Note that this requires administrative privileges unless run with argument /Personal and neither sets up nor removes the file associations.

Running remotes::install_github('r-lib/pkgbuild') in the R Gui:

remotes::install_github("r-lib/pkgbuild")
#> Downloading GitHub repo r-lib/pkgbuild@master
#> 
#>   
   The system cannot find the path specified.
#> 

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpcHxn20\remotes1bd45b9f171d\r-lib-pkgbuild-79cb7a0/DESCRIPTION' ...

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpcHxn20\remotes1bd45b9f171d\r-lib-pkgbuild-79cb7a0/DESCRIPTION' ... 

v  checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpcHxn20\remotes1bd45b9f171d\r-lib-pkgbuild-79cb7a0/DESCRIPTION'
#> 

-  preparing 'pkgbuild':
#>    checking DESCRIPTION meta-information ...

   checking DESCRIPTION meta-information ... 

v  checking DESCRIPTION meta-information
#> 

-  checking for LF line-endings in source and make files and shell scripts
#> 

-  checking for empty or unneeded directories
#> 

-  building 'pkgbuild_1.0.3.tar.gz'
#> 

#> 
#> Error in (function (command = NULL, args = character(), error_on_status = TRUE, : System command error

Created on 2019-04-22 by the reprex package (v0.2.1)

Running pkgbuild::install_github('r-lib/pkgbuild') in RStudio:

remotes::install_github("r-lib/pkgbuild")
#> Downloading GitHub repo r-lib/pkgbuild@master
#> 
#>   
   The system cannot find the path specified.
#> 

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpsbO8RA\remotes1080610468ba\r-lib-pkgbuild-79cb7a0/DESCRIPTION' ...

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpsbO8RA\remotes1080610468ba\r-lib-pkgbuild-79cb7a0/DESCRIPTION' ... 

v  checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpsbO8RA\remotes1080610468ba\r-lib-pkgbuild-79cb7a0/DESCRIPTION'
#> 

-  preparing 'pkgbuild':
#>    checking DESCRIPTION meta-information ...

   checking DESCRIPTION meta-information ... 

v  checking DESCRIPTION meta-information
#> 

-  checking for LF line-endings in source and make files and shell scripts
#> 

-  checking for empty or unneeded directories
#> 

-  building 'pkgbuild_1.0.3.tar.gz'
#> 

#> 
#> Error in (function (command = NULL, args = character(), error_on_status = TRUE, : System command error

Created on 2019-04-22 by the reprex package (v0.2.1)

cderv commented 5 years ago

You should try with a cran source package first and not github and using with_build_tools to isolate

pkgbuild::with_build_tools(install.packages("glue", type = "source"))
rileytwo commented 5 years ago

Should I run that in RStudio or the R Gui?

Edit: I ran pkgbuild::with_build_tools(install.packages("glue", type = "source")) in RStudio and was prompted to Install Build Tools by the popup.

However, from the R Gui:


--- Please select a CRAN mirror for use in this session ---
trying URL 'https://cloud.r-project.org/src/contrib/glue_1.3.1.tar.gz'
Content type 'application/x-gzip' length 122950 bytes (120 KB)
downloaded 120 KB

The system cannot find the path specified.
* installing *source* package 'glue' ...
** package 'glue' successfully unpacked and MD5 sums checked
** libs
C:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mtune=generic -c glue.c -o glue.o
C:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mtune=generic -c init.c -o init.o
C:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mtune=generic -c trim.c -o trim.o
C:/Rtools/mingw_64/bin/gcc -shared -s -static-libgcc -o glue.dll tmp.def glue.o init.o trim.o -LC:/PROGRA~1/R/R-3.5.3/bin/x64 -lR
installing to C:/Users/RRoach/Documents/R/win-library/3.5/glue/libs/x64
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
  converting help for package 'glue'
    finding HTML links ... done
    as_glue                                 html  
    glue-deprecated                         html  
    glue                                    html  
    glue_col                                html  
    glue_collapse                           html  
    glue_sql                                html  
    identity_transformer                    html  
    quoting                                 html  
    trim                                    html  
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (glue)
In R CMD INSTALL

The downloaded source packages are in
        ‘C:\Users\RRoach\AppData\Local\Temp\Rtmp0mHSoI\downloaded_packages’
Warning message:
In install.packages("glue", type = "source") :
  installation of package ‘glue’ had non-zero exit status

This may not be related to R directly, but I've been seeing The system cannot find the path specified. often, specifically when using Scoop and running scoop install. Do you know where R is searching and what R is searching for?

cderv commented 5 years ago

Should work in both, but have just one open at a time to not try to install a already in use 📦

rileytwo commented 5 years ago

@cderv commenting again in case you didn't see https://github.com/r-lib/pkgbuild/issues/72#issuecomment-485427084

cderv commented 5 years ago
rileytwo commented 5 years ago

I have v1.2.1502. And yes, it does seem that it's installed correctly. I just ran pkgbuild::with_build_tools(install.packages("glue", type = "source")) in the RStudio console after running options(buildtools.check = NULL) and was able to install the package. The installation information in the console was the exact same as the output I posted above from the R Gui.

Since it appears that pkgbuild is in fact able to locate RTools, I tried to run the following commands:

remotes::install_github("tidyverse/glue")
#> Downloading GitHub repo tidyverse/glue@master
#>   
   The system cannot find the path specified.
#> 

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpkflwCr\remotes31dc7b465f8c\tidyverse-glue-b35f0fe/DESCRIPTION' ...

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpkflwCr\remotes31dc7b465f8c\tidyverse-glue-b35f0fe/DESCRIPTION' ... 

v  checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpkflwCr\remotes31dc7b465f8c\tidyverse-glue-b35f0fe/DESCRIPTION'
#> 

-  preparing 'glue':
#>    checking DESCRIPTION meta-information ...

   checking DESCRIPTION meta-information ... 

v  checking DESCRIPTION meta-information
#> -  cleaning src
#> 

-  checking for LF line-endings in source and make files and shell scripts
#> 

-  checking for empty or unneeded directories
#> 

-  building 'glue_1.3.1.tar.gz'
#> 

#> 
#> Error in (function (command = NULL, args = character(), error_on_status = TRUE, : System command error

Created on 2019-04-23 by the reprex package (v0.2.1)

library(remotes)
pkgbuild::with_build_tools(install_github('tidyverse/glue'))
#> Downloading GitHub repo tidyverse/glue@master
#>   
   The system cannot find the path specified.
#> 

   checking for file 'C:\Users\RRoach\AppData\Local\Temp\Rtmp6Po5Ns\remotes33083c34679d\tidyverse-glue-b35f0fe/DESCRIPTION' ...

v  checking for file 'C:\Users\RRoach\AppData\Local\Temp\Rtmp6Po5Ns\remotes33083c34679d\tidyverse-glue-b35f0fe/DESCRIPTION'
#> 

-  preparing 'glue':
#>    checking DESCRIPTION meta-information ...

   checking DESCRIPTION meta-information ... 

v  checking DESCRIPTION meta-information
#> -  cleaning src
#> 

-  checking for LF line-endings in source and make files and shell scripts
#> 

-  checking for empty or unneeded directories
#> 

-  building 'glue_1.3.1.tar.gz'
#> 

#> 
#> Error in (function (command = NULL, args = character(), error_on_status = TRUE, : System command error

Created on 2019-04-23 by the reprex package (v0.2.1)

Now pkgbuild::with_build_tools(install.packages("glue", type = "source")) was successful in the RStudio console after disabling the build tools (through options(buildtools.check = NULL)), what else is there to check for before we can eliminate RStudio as a possible source of the issue? From a first glance, the only difference between pkgbuild::with_build_tools(install.packages("glue", type = "source")) and pkgbuild::with_build_tools(install_github('tidyverse/glue')) is the former installs from CRAN while the latter installs from github.

Any thoughts?

rileytwo commented 5 years ago

Wow. I think I figured it out.

So, The system cannot find the path specified. appears to have actually been the problem. I had a registry entry in HKCU\Software\Microsoft\Command Processor\AutoRun that was attempting to run Clink every time (I think) I was running any system commands. Removed the registry entry, started RStudio, and ran this:

remotes::install_github('tidyverse/glue')
Downloading GitHub repo tidyverse/glue@master
√  checking for file 'C:\Users\RRoach\AppData\Local\Temp\RtmpaiPeD0\remotes2ac454fa3851\tidyverse-glue-b35f0fe/DESCRIPTION' (365ms)
-  preparing 'glue':
√  checking DESCRIPTION meta-information ... 
-  cleaning src
-  checking for LF line-endings in source and make files and shell scripts
-  checking for empty or unneeded directories
-  building 'glue_1.3.1.tar.gz'

Installing package into ‘C:/Users/RRoach/Documents/R/win-library/3.5’
(as ‘lib’ is unspecified)
* installing *source* package 'glue' ...
** libs
C:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mtune=generic -c glue.c -o glue.o
C:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mtune=generic -c init.c -o init.o
C:/Rtools/mingw_64/bin/gcc  -I"C:/PROGRA~1/R/R-3.5.3/include" -DNDEBUG          -O2 -Wall  -std=gnu99 -mtune=generic -c trim.c -o trim.o
C:/Rtools/mingw_64/bin/gcc -shared -s -static-libgcc -o glue.dll tmp.def glue.o init.o trim.o -LC:/PROGRA~1/R/R-3.5.3/bin/x64 -lR
installing to C:/Users/RRoach/Documents/R/win-library/3.5/glue/libs/x64
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
  converting help for package 'glue'
    finding HTML links ... done
    as_glue                                 html  
    glue-deprecated                         html  
    glue                                    html  
    glue_col                                html  
    glue_collapse                           html  
    glue_sql                                html  
    identity_transformer                    html  
    quoting                                 html  
    trim                                    html  
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (glue)
In R CMD INSTALL

Looks like that was the problem. I'm sorry to have put you through this 😅

cderv commented 5 years ago

Glad you found this issue

remotes::install_github('tidyverse/glue')

To have a synthesis: did you run this

Thanks.

rileytwo commented 5 years ago

To have a synthesis: did you run this

  • in RStudio ?

Yes, I did.

  • without disabling the prompt?

I disabled it for a session, but did not set the option permanently i.e. I did not place options(buildtools.check = NULL) in my .Rprofile.

  • with Rtools in the PATH

Yes, I ran remotes::install_github('tidyverse/glue') and was successful with Rtools in my PATH. These are the first three entries in my PATH from Sys.getenv('PATH'):

"C:\\Program Files\\R\\R-3.5.3\\bin\\x64;C:\\Rtools\\bin\\;C:\\Rtools\\mingw_64\\bin\\

  • with BINPREF set ?

Yes. This is my BINPREF from Sys.getenv('BINPREF'):

"C:/Rtools/mingw_64/bin/"

vojtechkania commented 4 years ago

I am using your solution, but it reports this error:

> remotes::install_github('tidyverse/glue')
Error: Failed to install 'glue' from GitHub:
  Timeout was reached: [api.github.com] Connection timed out after 10000 milliseconds

What is the issue?

rileytwo commented 4 years ago

@vojtechkania Looking at the error message, I don't think the problem you're having is related to the problem with find_rtools() I had above. Looking at the error message,

Error: Failed to install 'glue' from GitHub: Timeout was reached: [api.github.com] Connection timed out after 10000 milliseconds

the problem seems to be the github api. Are you having any problems with find_rtools()? If so, can you post the error message?

Mayurachat2021 commented 11 months ago

คู่มือ IBM Storwize V7000 CLI 7

https://studylib.net/doc/25259122/ibm-storwize-v7000-cli-guide-7