当我在EC2(实际上是EC2上的EMR)上显示Debian Lenny的基本图像时,我得到Lenny版本5.0.7并且我能够使用outlined in a previous question方法升级R.升级R后我有版本2.12。
我无法再安装Hmisc软件包。我看到它有一个Debian包,所以我试过了:
sudo apt-get update
sudo apt-get install r-cran-hmisc
这似乎有效,但当我进入R时,我得到以下内容:
> require(Hmisc)
Loading required package: Hmisc
Failed with error: ‘package 'Hmisc' was built before R 2.10.0: please re-install it’
所以我认为Debian仓库中的Hmisc是旧版本。所以我只是升级。所以我进入R和:
install.packages("Hmisc")
失败了:
...
gcc -I/usr/share/R/include -fpic -std=gnu99 -O3 -pipe -g -c string_box.c -o string_box.o
gfortran -fpic -O3 -pipe -g -c wclosest.f -o wclosest.o
gcc -shared -o Hmisc.so Hmisc.o cidxcn.o cidxcp.o hoeffd.o jacklins.o largrec.o mChoice.o nstr.o ranksort.o rcorr.o string_box.o wclosest.o -lgfortran -lm -L/usr/lib64/R/lib -lR
/usr/bin/ld: cannot find -lgfortran
collect2: ld returned 1 exit status
make: *** [Hmisc.so] Error 1
ERROR: compilation failed for package ‘Hmisc’
* removing ‘/home/hadoop/R/x86_64-pc-linux-gnu-library/2.12/Hmisc’
The downloaded packages are in
‘/tmp/Rtmp2Ej5Tn/downloaded_packages’
Warning message:
In install.packages("Hmisc") :
installation of package 'Hmisc' had non-zero exit status
>
似乎ld正在与lgfortran斗争。我检查了并且安装了gfortran。所以我尝试安装gfortran-4.1:
sudo apt-get install gfortran-4.1
这没有改变任何事情。也没有安装4.2。
关于下一步尝试的任何提示?
答案 0 :(得分:1)
安装r-base-dev
包时会发生什么?它会构建吗?它应该。
答案 1 :(得分:0)
我在这里发布后偶然发现了this previous question。看来我需要手动链接到gfortran库:
sudo ln -s /usr/lib/libgfortran.so.3 /usr/lib/libgfortran.so
更新群集程序包后,我可以install.packages("Hmisc")