2012-10-26 112 views
2

我试图在Cloudera的CDH4 Hadoop VM上安装RHadoop。 RHadoop是一个通过R编程接口使用Hadoop的框架。安装RHadoop R软件包“rmr”的先决条件之一是另一个名为Rcpp的R软件包,它用于从R调用C++代码。当我尝试安装软件包时,出现以下错误。我联系了Rcpp和RHadoop社区,都说它是一个GCC问题。当我尝试更新或重新安装GCC时,我得到 “已安装软件包gcc-4.4.6-4.e16.x86_64和最新版本,无事可做。”有什么建议么?在Cloudera CDH4上编译R软件包时出现GCC错误

这是错误(来自R命令行)。

> install.packages("Rcpp") 
Installing package(s) into ‘/usr/lib64/R/library’ 
(as ‘lib’ is unspecified) 
--- Please select a CRAN mirror for use in this session --- 
Loading Tcl/Tk interface ... done 
trying URL 'http://cran.csdb.cn/src/contrib/Rcpp_0.9.15.tar.gz' 
Content type 'application/x-gzip' length 2119769 bytes (2.0 Mb) 
opened URL 
============================== 
==================== 
downloaded 2.0 Mb 

* installing *source* package ‘Rcpp’ ... 
** package ‘Rcpp’ successfully unpacked and MD5 sums checked 
** libs 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Date.cpp -o Date.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c DateVector.cpp -o DateVector.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Datetime.cpp -o Datetime.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c DatetimeVector.cpp -o DatetimeVector.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Dimension.cpp -o Dimension.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c DottedPair.cpp -o DottedPair.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Environment.cpp -o Environment.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Evaluator.cpp -o Evaluator.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Formula.cpp -o Formula.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Function.cpp -o Function.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Language.cpp -o Language.o 
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include/ -I/usr/local/include -fpic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c Module.cpp -o Module.o 
{standard input}: Assembler messages: 
{standard input}:10671: Warning: end of file not at end of a line; newline inserted 
{standard input}:11544: Error: bad register name `%' 
{standard input}:11544: Error: open CFI at the end of file; missing .cfi_endproc directive 
g++: Internal error: Killed (program cc1plus) 
Please submit a full bug report. 
See <http://bugzilla.redhat.com/bugzilla> for instructions. 
make: *** [Module.o] Error 1 
ERROR: compilation failed for package ‘Rcpp’ 
* removing ‘/usr/lib64/R/library/Rcpp’ 

The downloaded source packages are in 
    ‘/tmp/RtmpGdXO9h/downloaded_packages’ 
Updating HTML index of packages in '.Library' 
Making packages.html ... done 
Warning message: 
In install.packages("Rcpp") : 
    installation of package ‘Rcpp’ had non-zero exit status 

回答

4

由于RCPP作者之一,我可以保证的是,错误可能是在你的结束,以及无论是海湾合作委员会(不太可能)或CDH。 RCPP被建造和重建bazillion次上都CRAN(是有pages summarizing the builds on CRANalso on Debian。包通常不杀死编译器。

能帮你在机器上运行了RAM的?

+0

这是一个好的猜测,我增加了内存的数量,这似乎修复了它。非常感谢! –

+0

在这种情况下,请考虑接受并可能upvoting的答案 - 通过点击'向上箭头'和'tickmark', –

+0

我看到了同样的问题,随机编译一个依赖Rcpp的虚拟机上的包,我猜测内存不够。 –