FAQs and Solutions to Errors

Errors on MacOS

Some of the errors outlined below might arise because of issues with building Giotto from source. The Giotto branch cless is a version of Giotto without C++ code, which should fix many of the installation errors.

remotes::install_github("RubD/Giotto@cless")

Issue 1: Clang Error

If you see this error on your MacOS:

clang: error: unsupported option ‘-fopenmp’

You can install another clang and point R to use that clang, which supports the -fopenmp paramter. This solution was provided on stackoverflow.

  1. Install llvm on your mac

brew install llvm
  1. Create a Makevars File

touch ~/.R/Makevars
  1. Add these lines to the Makevars File

# comment out first line 'CC= ... if there are errors with compiling a package
CC=/usr/local/opt/llvm/bin/clang -fopenmp
CXX=/usr/local/opt/llvm/bin/clang++

# Also potentially CXX11 (for C++11 compiler)
CXX11=/usr/local/opt/llvm/bin/clang++

# -O3 should be faster than -O2 (default) level optimisation ..
CFLAGS=-g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe
CXXFLAGS=-g -O3 -Wall -pedantic -std=c++11 -mtune=native -pipe
LDFLAGS=-L/usr/local/opt/gettext/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib
CPPFLAGS=-I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include

Issue 2: Clang Error

If you see this error on your MacOS:

Error message:
ld: warning: directory not found for option '-L/usr/local/gfortran/lib/gcc/x86_64-apple-darwin15/6.1.0'
ld: warning: directory not found for option '-L/usr/local/gfortran/lib'
ld: library not found for -lgfortran
clang-9: error: linker command failed with exit code 1 (use -v to see invocation)

Solution: Install the latest version of gofortran: https://github.com/fxcoudert/gfortran-for-macOS/releases/download/8.2/gfortran-8.2-Mojave.dmg

Solution Reference Source:

“I am having Mac OS Catalina and in my case installation of Homebrew, the newest gcc and Gfortran 8.2.0 solved the issue.” – Magda Orzechowska

“This worked for me in Mac OS Catalina as well! I used the gfortran 8.2 Mojave installation github.com/fxcoudert/gfortran-for-macOS/releases” – Danny

Issue 3: R 3.6.3 and MacOS Catalina

If you use the latest MacOS ‘Catalina’ and the latest R version 3.6.3 then you will need to install Clang 7.0.0 and GNU Fortran 6.1 as per instructions.

Additionally, you might have to specify some flags in “~/.R/Makevars”

# clang: start
CFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
CCFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
CXXFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
CPPFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
# clang: end

We hope that these issues will be resolved soon.

Errors on Windows

Issue 1: ‘Make’ not found error on windows

If you encounter this error:

Error in system(cmd) : (converted from warning) ‘make’ not found

Solution: Install the necessary package development tools.

## make sure Rtools is visible (from within R)
## you can set the paths manually
Sys.setenv(PATH = paste("C:/Rtools/bin","C:/Rtools/mingw_64/bin", Sys.getenv("PATH"), sep=";"))
Sys.setenv(BINPREF = "C:/Rtools/mingw_$(WIN)/bin/")

Issue 2: Error Converted from Warning

If you encounter this or similar error:

Error: Failed to install 'Giotto' from GitHub:
    (converted from warning) ...

Solution: Make sure Rtools is installed

## avoid converting warnings to errors by setting this environment variable to true (from within R)
Sys.setenv("R_REMOTES_NO_ERRORS_FROM_WARNINGS"=TRUE)

library(devtools) # if not installed do install.package('devtools')
library(remotes) # if not installed do install.package('remotes')
remotes::install_github("RubD/Giotto", build_vignettes = F)