Unable to install packages via renv::restore() ("R was unable to find one or more FORTRAN libraries during compilation.")
Asked Answered
I

0

7

I've downloaded an old repo on a new laptop (running on MacOS Catalina) and attempted to run a R script.

The repo has a renv lock file - meaning, I should be able to restore all dependencies as they were.

But as I run the renv::restore() command, this error message appears:

Installing pbapply [1.4-3] ...
    OK [linked cache]
Installing mvtnorm [1.1-2] ...
    FAILED
Error installing package 'mvtnorm':
===================================

* installing to library ‘~/renv/staging/2’
* installing *source* package ‘mvtnorm’ ...
** package ‘mvtnorm’ successfully unpacked and MD5 sums checked
** libs
clang -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/usr/local/include   -fPIC  -Wall -g -O2  -c C_FORTRAN_interface.c -o C_FORTRAN_interface.o
clang -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/usr/local/include   -fPIC  -Wall -g -O2  -c miwa.c -o miwa.o
gfortran   -fPIC  -g -O2  -c mvt.f -o mvt.o
clang -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/usr/local/include   -fPIC  -Wall -g -O2  -c mvtnorm-init.c -o mvtnorm-init.o
gfortran   -fPIC  -g -O2  -c tvpack.f -o tvpack.o
clang -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o mvtnorm.so C_FORTRAN_interface.o miwa.o mvt.o mvtnorm-init.o tvpack.o -L/usr/local/gfortran/lib/gcc/x86_64-apple-darwin15/6.1.0 -L/usr/local/gfortran/lib -lgfortran -lquadmath -lm -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
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: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [mvtnorm.so] Error 1
ERROR: compilation failed for package ‘mvtnorm’
* removing ‘~/renv/staging/2/mvtnorm’
------------------------------------------------------------------------------ 
R was unable to find one or more FORTRAN libraries during compilation.
This often implies that the FORTRAN compiler has not been properly configured.
Please see https://mcmap.net/q/478480/-mac-os-x-r-error-quot-ld-warning-directory-not-found-for-option-quot for more information.

Reason(s):
- 'ld: library not found for -lgfortran'
Error: install of package 'mvtnorm' failed [error code 1]
Traceback (most recent calls last):
13: renv::restore()
12: renv_restore_run_actions(project, diff, current, lockfile, rebuild)
11: renv_install(records)
10: renv_install_staged(records)
 9: renv_install_default(records)
 8: handler(package, renv_install_impl(record))
 7: renv_install_impl(record)
 6: withCallingHandlers(renv_install_package_local(record), error = function(e) {
        vwritef("\tFAILED")
        writef(e$output)
    })
 5: renv_install_package_local(record)
 4: renv_install_package_local_impl(package, path)
 3: r_cmd_install(package, path)
 2: r_exec_error(package, output, "install", status)
 1: stop(error)

I can't make sense of the link in the error message (copied here: Mac OS X R error "ld: warning: directory not found for option").

From my problem search, I've come across some possible solutions that are above my R knowledge level, e.g.:

Some guidance here would be deeply appreciated. Please let me know if there's any other info you need (first time posting here).

Thanks in advance!

Solution

Download and install "gfortran-6.1.pkg (OS X 10.11+, signed, 64-bit)" from this page: https://cran.r-project.org/bin/macosx/tools/

Incommensurate answered 4/8, 2021 at 8:25 Comment(3)
You need to install Fortran, but don't use Homebrew as suggested in one of your links. Use a version from https://cran.r-project.org/bin/macosx/tools/ (probably the one linked from the very top of that page; the other links there are for old MacOS versions.)Impower
Fantastic - that works. Thanks!Incommensurate
How to install it? Im using R 4.2.3 and macos 14 but I couldn't find any instructionsAbdulabdulla

© 2022 - 2024 — McMap. All rights reserved.