Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't find gfortran 4.8 to build package

Tags:

r

fortran

I'm trying to install the deldir package in R via install.packages("deldir",type = 'source') but am getting the following error message (this is OSX Mavericks):

* installing *source* package ‘deldir’ ...
** package ‘deldir’ successfully unpacked and MD5 sums checked
** libs
gfortran-4.8   -fPIC  -g -O2  -c acchk.f -o acchk.o
make: gfortran-4.8: No such file or directory
make: *** [acchk.o] Error 1
ERROR: compilation failed for package ‘deldir’

gfortran 4.8 does seem to be available on my system, however:

> gfortran -v
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/local/gfortran/libexec/gcc/x86_64-apple-darwin13/4.8.2/lto-wrapper
Target: x86_64-apple-darwin13
Configured with: ../gcc-4.8.2/configure --prefix=/usr/local/gfortran --with-gmp=/Users/fx/devel/gcc/deps-static/x86_64 --enable-languages=c,c++,fortran,objc,obj-c++ --build=x86_64-apple-darwin13
Thread model: posix
gcc version 4.8.2 (GCC) 

After symlinking gfortran-4.8 to gfortran I get a bit further but fail nonetheless:

* installing *source* package ‘deldir’ ...
** package ‘deldir’ successfully unpacked and MD5 sums checked
** libs
gfortran-4.8   -fPIC  -g -O2  -c acchk.f -o acchk.o
gfortran-4.8   -fPIC  -g -O2  -c addpt.f -o addpt.o
gfortran-4.8   -fPIC  -g -O2  -c adjchk.f -o adjchk.o
gfortran-4.8   -fPIC  -g -O2  -c binsrt.f -o binsrt.o
gfortran-4.8   -fPIC  -g -O2  -c circen.f -o circen.o
gfortran-4.8   -fPIC  -g -O2  -c cross.f -o cross.o
gfortran-4.8   -fPIC  -g -O2  -c delet.f -o delet.o
gfortran-4.8   -fPIC  -g -O2  -c delet1.f -o delet1.o
gfortran-4.8   -fPIC  -g -O2  -c delout.f -o delout.o
gfortran-4.8   -fPIC  -g -O2  -c delseg.f -o delseg.o
gfortran-4.8   -fPIC  -g -O2  -c dirout.f -o dirout.o
gfortran-4.8   -fPIC  -g -O2  -c dirseg.f -o dirseg.o
gfortran-4.8   -fPIC  -g -O2  -c dldins.f -o dldins.o
gfortran-4.8   -fPIC  -g -O2  -c initad.f -o initad.o
gfortran-4.8   -fPIC  -g -O2  -c insrt.f -o insrt.o
gfortran-4.8   -fPIC  -g -O2  -c insrt1.f -o insrt1.o
gfortran-4.8   -fPIC  -g -O2  -c intri.f -o intri.o
gfortran-4.8   -fPIC  -g -O2  -c locn.f -o locn.o
gfortran-4.8   -fPIC  -g -O2  -c master.f -o master.o
gfortran-4.8   -fPIC  -g -O2  -c mnnd.f -o mnnd.o
gfortran-4.8   -fPIC  -g -O2  -c pred.f -o pred.o
gfortran-4.8   -fPIC  -g -O2  -c qtest.f -o qtest.o
gfortran-4.8   -fPIC  -g -O2  -c qtest1.f -o qtest1.o
gfortran-4.8   -fPIC  -g -O2  -c stoke.f -o stoke.o
gfortran-4.8   -fPIC  -g -O2  -c succ.f -o succ.o
gfortran-4.8   -fPIC  -g -O2  -c swap.f -o swap.o
gfortran-4.8   -fPIC  -g -O2  -c testeq.f -o testeq.o
gfortran-4.8   -fPIC  -g -O2  -c triar.f -o triar.o
gfortran-4.8   -fPIC  -g -O2  -c trifnd.f -o trifnd.o
clang -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined     suppress -L/usr/local/lib -o deldir.so acchk.o addpt.o adjchk.o binsrt.o circen.o cross.o delet.o delet1.o delout    .o delseg.o dirout.o dirseg.o dldins.o initad.o insrt.o insrt1.o intri.o locn.o master.o mnnd.o pred.o qtest.o     qtest1.o stoke.o succ.o swap.o testeq.o triar.o trifnd.o -L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2 -    lgfortran -lquadmath -lm -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
ld: warning: directory not found for option '-L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2'
ld: library not found for -lgfortran
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [deldir.so] Error 1
ERROR: compilation failed for package ‘deldir’

Note that /usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.3 exists, /usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2 does not

sessionInfo():

> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-apple-darwin13.1.0 (64-bit)

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

Sys.getenv():

> Sys.getenv()
                                                                          __CF_USER_TEXT_ENCODING 
                                                                                      "0x1F5:0:0" 
                                                                                __CHECKFIX1436934 
                                                                                              "1" 
                                                                       Apple_PubSub_Socket_Render 
                                                                      "/tmp/launch-jCxLku/Render" 
                                                                                          DISPLAY 
                                                                                             ":0" 
                                                                       DYLD_FALLBACK_LIBRARY_PATH 
"/Users/<myusername>/lib:/usr/local/lib:/usr/lib::/Library/Frameworks/R.framework/Resources/lib" 
                                                                                           EDITOR 
                                                                                             "vi" 
                                                                                      GIT_ASKPASS 
                                                                              "rpostback-askpass" 
                                                                                             HOME 
                                                                            "/Users/<myusername>" 
                                                                                             LANG 
                                                                                    "en_US.UTF-8" 
                                                                                         LC_CTYPE 
                                                                                    "en_US.UTF-8" 
                                                                                             LN_S 
                                                                                          "ln -s" 
                                                                                          LOGNAME 
                                                                                   "<myusername>" 
                                                                                             MAKE 
                                                                                           "make" 
                                                                                            PAGER 
                                                                                  "/usr/bin/less" 
                                                                                             PATH 
                                       "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin" 
                                                                                        R_BROWSER 
                                                                                  "/usr/bin/open" 
                                                                                        R_BZIPCMD 
                                                                                 "/usr/bin/bzip2" 
                                                                                        R_DOC_DIR 
                                                  "/Library/Frameworks/R.framework/Resources/doc" 
                                                                                        R_GZIPCMD 
                                                                                  "/usr/bin/gzip" 
                                                                                           R_HOME 
                                                      "/Library/Frameworks/R.framework/Resources" 
                                                                                    R_INCLUDE_DIR 
                                              "/Library/Frameworks/R.framework/Resources/include" 
                                                                                      R_LIBS_SITE 
                                                                                               "" 
                                                                                      R_LIBS_USER 
                                                                        "~/Library/R/3.1/library" 
                                                                                      R_PAPERSIZE 
                                                                                             "a4" 
                                                                                      R_PDFVIEWER 
                                                                                  "/usr/bin/open" 
                                                                                       R_PLATFORM 
                                                                      "x86_64-apple-darwin13.1.0" 
                                                                                       R_PRINTCMD 
                                                                                            "lpr" 
                                                                                           R_QPDF 
                                             "/Library/Frameworks/R.framework/Resources/bin/qpdf" 
                                                                                         R_RD4PDF 
                                                                        "times,inconsolata,hyper" 
                                                                                 R_SESSION_TMPDIR 
                                   "/var/folders/jf/ds4sdyys44xckz_7f9zhrvsh0000gn/T//RtmpXaPpYF" 
                                                                                      R_SHARE_DIR 
                                                "/Library/Frameworks/R.framework/Resources/share" 
                                                                                     R_SYSTEM_ABI 
                                                                         "osx,gcc,gxx,gfortran,?" 
                                                                                    R_TEXI2DVICMD 
                                                                              "/usr/bin/texi2dvi" 
                                                                                       R_UNZIPCMD 
                                                                                 "/usr/bin/unzip" 
                                                                                         R_ZIPCMD 
                                                                                   "/usr/bin/zip" 
                                                                                RS_RPOSTBACK_PATH 
                                             "/Applications/RStudio.app/Contents/MacOS/rpostback" 
                                                                                 RS_SHARED_SECRET 
                                                                                        <removed> 
                                                                                          RSTUDIO 
                                                                                              "1" 
                                                                                   RSTUDIO_PANDOC 
                                                "/Applications/RStudio.app/Contents/MacOS/pandoc" 
                                                                             RSTUDIO_SESSION_PORT 
                                                                                          "10153" 
                                                                            RSTUDIO_USER_IDENTITY 
                                                                                  "<myusername>" 
                                                                                              SED 
                                                                                   "/usr/bin/sed" 
                                                                                            SHELL 
                                                                                      "/bin/bash" 
                                                                                    SSH_AUTH_SOCK 
                                                                   "/tmp/launch-Shnu2H/Listeners" 
                                                                                              TAR 
                                                                                   "/usr/bin/tar" 
                                                                                           TMPDIR 
                                              "/var/folders/jf/ds4sdyys44xckz_7f9zhrvsh0000gn/T/" 
                                                                                             USER 
                                                                                  "<myusername>"     
like image 518
RoyalTS Avatar asked Aug 14 '14 18:08

RoyalTS


4 Answers

I was using a linux machine and RStudio server. I had a similar problem. I knew already that gfortran was on the machine thanks to the system administrator.

To solve, in the shell, I typed which gfortran, which gave me a path.

Then, following this SO posting, I entered the following in the shell to create a new Makevars file

# create a file called ~/.R/Makevars:

mkdir -p ~/.R touch ~/.R/Makevars

Then, in that new file, I wrote the following

F77 = /usr/local/bin/gfortran #this was the path that I got from typing which gfortran in the shell

FC = $F77

FLIBS = -L/usr/local/bin/gfortran

From there, I was able to install the package that wasn't compiling properly (in my case vegan instead of igraph using install.packages("vegan")

like image 181
Michael Avatar answered Nov 20 '22 18:11

Michael


I had your same problem (in OS X Yosemite), and (unfortunately) painstakingly recreated your symlink "partial solution". Finally, I was able to solve the issue by forgetting about linking or aliasing and just downgrading to gfortran-4.8.

I had installed the newer version with brew, so for me this entailed uninstalling

brew uninstall gcc

and then following the instructions here to install 4.8.2, i.e.

curl -O http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
sudo tar fvxz gfortran-4.8.2-darwin13.tar.bz2 -C /

It still threw up some warnings but at least I got a successful installation of deldir, which I needed to run pgirmess.

like image 41
Oreotrephes Avatar answered Nov 20 '22 19:11

Oreotrephes


I was getting the same error when installing the igraph package in R on Manjaro Linux.

It was due to the absence of a Fortran compiler (gfortran I think). I found out that gfortran package is named as gcc-fortran in Manjaro repo and many other (GNU) Linux repos. So, I just installed gcc-fortran package and then restarted RStudio and igraph package installed without any issues.

like image 8
kudo_shinichi Avatar answered Nov 20 '22 19:11

kudo_shinichi


I found a solution here: https://support.rstudio.com/hc/communities/public/questions/201688563-Problem-with-Mac-Yosemite-Beta-and-RStudio-not-finding-TeX-distribution

It turns out that Adam Maxwell noted that Yosemite beta has a significant bug in passing environment variables to subprocesses.

After installing gfortran as in OS X package installation depends on gfortran-4.8 .

This works: create an alias in your .bash_profile

alias fixrs="launchctl setenv PATH /usr/texbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin"

Then close and open the terminal.

And execute the fixrs command in the terminal before launching RStudio.

Then I could build igraph successfully.

like image 2
xgdgsc Avatar answered Nov 20 '22 18:11

xgdgsc