Error in R: (Package which is only available in source form, and may need compilation of C/C++/Fortran) Error in R: (Package which is only available in source form, and may need compilation of C/C++/Fortran) r r

Error in R: (Package which is only available in source form, and may need compilation of C/C++/Fortran)


The error is due to R being unable to find a binary version of the package on CRAN, instead only finding a source version of the package and your Windows installation being unable to compile it. Usually this doesn't occur, but in this case was caused by the (temporary) outage of some of the mirrors at CRAN. If you type:

> getOption('repos')                                CRAN                            CRANextra            "http://cran.rstudio.com" "http://www.stats.ox.ac.uk/pub/RWin" attr(,"RStudio")[1] TRUE

You will see that R uses "http://cran.rstudio.com" by default to look for a package to download. If you see the cran mirrors web page you can see at the top that "http://cran.rstudio.com" actually redirects you to different servers world wide (I assume according to the geo location).

When I had the above issue, I solved it by manually changing the repo to one of the urls in the link provided. I suggest you use a different country (or even continent) in case you receive the above error.

I provide below some of the urls in case the link above changes:

  1. Brazil http://nbcgib.uesc.br/mirrors/cran/
  2. Italy http://cran.mirror.garr.it/mirrors/CRAN/
  3. Japan http://cran.ism.ac.jp/
  4. South Africa http://r.adu.org.za/
  5. USA https://cran.cnr.Berkeley.edu/

You need to run the function install.packages as follows:

install.packages('<package_name>', repo='http://nbcgib.uesc.br/mirrors/cran/')#or any other url from the list or link

One of them should then work to install a binary from an alternative mirror.


You need to install RTools to build packages like this (i.e., a source package rather than a binary). After you install Rtools, then try again to install.packages("ggplot2") and R will prompt you with:

Do you want to attempt to install these from source?y/n:

(see the picture below)

You need to answer y and it will try to compile the package so it can be installed.

enter image description here


Struggled with this issue today, solved it for now by first downloading the windows binary and then installing e.g.

install.packages("https://cran.r-project.org/bin/windows/contrib/3.3/stringi_1.1.1.zip", repos =NULL)

Just go to https://cran.r-project.org/ and then R Binaries/Windows/contrib and copy the url as argument to install.packages()