【问题标题】:Installing kernlab package from sources on Mac在 Mac 上从源安装 kernlab 包
【发布时间】:2014-11-06 15:58:27
【问题描述】:

我在小牛队 10.9.2 上运行 R 3.0.2:

20:35:19/Spectral $R

R version 3.0.2 (2013-09-25) -- "Frisbee Sailing"
Copyright (C) 2013 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin10.8.0 (64-bit)

让我们尝试从源代码安装 kernlab 包(不从源代码安装会出现更严重的错误)

install.packages("kernlab", type="source")

我们在编译过程中走了很长一段路,但最后 linker 失败了:

-Wl,CoreFoundation
ld: warning: directory not found for option '-L/usr/local/lib/gcc/i686-apple-darwin8/4.2.3/x86_64'
ld: warning: directory not found for option '-L/usr/local/lib/x86_64'
ld: warning: directory not found for option '-L/usr/local/lib/gcc/i686-apple-darwin8/4.2.3'
ld: library not found for -lgfortran
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [kernlab.so] Error 1
ERROR: compilation failed for package ‘kernlab’
* removing ‘/Library/Frameworks/R.framework/Versions/3.0/Resources/library/kernlab’
* restoring previous ‘/Library/Frameworks/R.framework/Versions/3.0/Resources/library/kernlab’

The downloaded source packages are in
    ‘/private/var/folders/k4/l5ww32y14svd5wmkgzzftl9m0000gn/T/RtmpyBfij3/downloaded_packages’
Warning message:
In install.packages("kernlab", type = "source") :
  installation of package ‘kernlab’ had non-zero exit status

更新 根据评论我更新到最新(3.12)R。我也做了一个

brew install gfortran

成功了

但是从源代码编译 R 仍然存在 -lgfortran 的问题:

install.packages("kernlab", type="source")
..
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: *** [kernlab.so] Error 1
ERROR: compilation failed for package ‘kernlab’
* removing ‘/Library/Frameworks/R.framework/Versions/3.1/Resources/library/kernlab’

The downloaded source packages are in
    ‘/private/var/folders/k4/l5ww32y14svd5wmkgzzftl9m0000gn/T/RtmpugQtXD/downloaded_packages’

XCode 是 5.1.1(刚刚更新 - 是 10.9.2 的最新版本)

这里是命令行工具的信息:

pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 6.1.0.0.1.1413057044
volume: /
location: /
install-time: 1415295324
groups: com.apple.FindSystemFiles.pkg-group com.apple.DevToolsBoth.pkg-group com.apple.DevToolsNonRelocatableShared.pkg-group

这里是 gfortran 信息:

09:54:46/spectral $gfortran -v
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/local/Cellar/gfortran/4.8.2/gfortran/libexec/gcc/x86_64-apple-darwin13.0.0/4.8.2/lto-wrapper
Target: x86_64-apple-darwin13.0.0
Configured with: ../configure --prefix=/usr/local/Cellar/gfortran/4.8.2/gfortran --datarootdir=/usr/local/Cellar/gfortran/4.8.2/share --bindir=/usr/local/Cellar/gfortran/4.8.2/bin --enable-languages=fortran --with-system-zlib --with-gmp=/usr/local/opt/gmp --with-mpfr=/usr/local/opt/mpfr --with-mpc=/usr/local/opt/libmpc --with-cloog=/usr/local/opt/cloog --with-isl=/usr/local/opt/isl --disable-cloog-version-check --disable-isl-version-check --enable-checking=release --disable-stage1-checking --disable-libstdcxx --enable-lto --disable-nls --disable-multilib
Thread model: posix
gcc version 4.8.2 (GCC)

【问题讨论】:

  • 我的第一步可能是更新 R.
  • 更新后,请告诉我们您的 XCode 版本、Fortran 版本以及您如何安装命令行工具。
  • @Roland 哦,你的最新版本是 3.12 - 会试试的。
  • @BondedDust 使用 XCode 和命令行工具信息和 gfortran 信息更新了 OP

标签: r macos


【解决方案1】:

直接通过 RStudio 执行安装时可以正常工作。目前尚不清楚为什么会有所作为,但问题已解决。

【讨论】:

    猜你喜欢
    • 2012-05-14
    • 2012-11-02
    • 1970-01-01
    • 2021-04-14
    • 2013-03-20
    • 2022-10-07
    • 1970-01-01
    • 1970-01-01
    • 2020-07-07
    相关资源
    最近更新 更多