This page details common problems encountered when trying to install igraph. If you did not find an answer to your problem here, feel free to ask for help on https://igraph.discourse.group/ When you do so, be sure to state:
- the output of
- where you obtained R from
- the complete output from running
install.packages("igraph")in a fresh R session.
Cannot compile igraph from sources on Windows or macOS
Do not compile igraph from sources, unless you know what you are
doing! It is much more convenient to use the binaries from CRAN instead.
These can be installed using
Usually, it takes a few days for binary releases to become available
on CRAN after each new igraph source release. During this period,
install.packages() will give you a choice about using the
latest source release or the previous binary release. Just choose to use
the binary release, i.e. respond “no” to “Do you want to install from
> install.packages('igraph') There is a binary version available but the source version is later: binary source needs_compilation igraph 1.2.7 1.2.8 TRUE Do you want to install from sources the package which needs compilation? (Yes/no/cancel) no
CRAN provides Windows and macOS binaries only for the last two minor releases of R (e.g. 4.2 and 4.1), but not for older ones (e.g. 4.0). Make sure that you are using one of these supported R versions. Refer to https://r-project.org/ to find out what the latest R version is at the moment.
Note that the pre-compiled binaries on CRAN are only compatible with the R distribution provided by CRAN itself. If you obtained R from different sources, such as Homebrew or MacPorts on macOS, you will not be able to use these, and the only way to install packages will be to compile them from sources.
I still want to compile igraph from sources
If you decide to try to compile from sources anyway, basic requirements are listed below. It is assumed that you are comfortable compiling software from sources and resolving basic issues as they arise. Otherwise, please use the binaries.
- Make sure you have a compatible toolchain installed, including a
Fortran compiler. On Linux, make sure you have
gfortraninstalled. For Windows, you will need Rtools.
- Instructions to install Rtools for R-4.0.0 to to R-4.1.3, see in particular the “Using pacman” link. You will find a copyable pacman command for installing all dependencies.
- Instructions to install Rtools for R4.2.x.
- Make sure you have the GLPK C library installed. This is not the same as the Rglpk R package. Instructions for installing libraries for Rtools4 on Windows are here
fatal error: glpk.h: No such file or directory
This error occurs only on Windows, when trying to compile igraph from sources. Please refer to the previous section.
Cannot compile igraph from sources on Linux
Since CRAN does not provide binary packages for Linux, Linux users usually need to compile igraph from sources. In order to do so, make sure that you have all the prerequisites:
- C, C++ and Fortran compilers. On Debian-based distros, use
sudo apt install build-essential gfortran.
- Development packages for
glpk. On Debian-based distros, use
sudo apt install libxml2-dev libglpk-dev.
libgfortran.so.4: cannot open shared object file: No such file or directory
This problem occurs when there are multiple incompatible gfortran
versions on your machine. Most commonly, one of them comes from an
active Anaconda environment. Always deactivate all Anaconda environments
conda deactivate before installing igraph using
Make sure that Anaconda’s
bin directory is not
present in your
PATH environment variable. Do
not add this directory to the path manually. Instead, let Anaconda
manage it using
conda init. Only Anaconda’s
condabin, but not
bin, should be
present in the
libmkl_rt.so.1: cannot open shared object file: No such file or directory
This issue typically occurs when an Anaconda environment containing conflicting BLAS libraries is active. Please refer to the instructions in the section “libgfortran.so.4: cannot open shared object file”.
libglpk.so.40: cannot open shared object file: No such file or directory
This error will occur on Linux systems when igraph was compiled with
GLPK support, but GLPK is not currently installed on the system. To
resolve it, install GLPK. On Debian-based systems, simply use
sudo apt install libglpk40.
This may happen when a binary version of igraph is installed from https://packagemanager.rstudio.com. These binaries assume that GLPK is present on your system.
GLPK is not available, Unimplemented function call
This error occurs when calling an igraph function that relies on GLPK, but igraph was compiled without GLPK support. Please refer to “Cannot compile igraph from sources on Linux” for instructions on compiling igraph with GLPK support.