不多说,直接上干货!

  为了使用SparkR,决定要在Spark所在的Linux上装上R,结果血泪篇了。主要原因是公司内部的虚机,无法连外网,所以网上很多的直接rpm或者yum的方法都没用,需要自己编译R的源码,中间因为Redhat Enterprise没有给装好gcc,又为了装gcc折腾了半天,终于现在通过了configure,可以make了,赶紧记录下来。

  目前看这是第一篇完整的R的安装文章吧。随着spark 1.4之后SparkR的流行,估计会有不少人需要这个东西。而且企业内部的机器一般都不会让你连外网的,那么自己编译就是必须的了。

  先是去R的官网,CRAN里面下一个R的源码包,R-3.3.2.tar.gz。然后解压缩到本机上。

R的编译,文档写的很简单就是三个命令:

./configure
make
make install

  可是configure是个大坑,第一个错是没找到gcc和c++编译器,只好先搞定gcc的安装,需要去找到RH EL6的iso包,把其中的Packages目录搞出来,传到虚机上。

  然后按照这个步骤安装。

rpm -ihv kernel-headers-2.6.32-279.el6.i686.rpm
rpm -ihv glibc-headers-2.12-1.80.el6.i686.rpm
rpm -ihv glibc-devel-2.12-1.80.el6.i686.rpm
rpm -ihv mpfr-2.4.1-6.el6.i686.rpm
rpm -ihv ppl-0.10.2-11.el6.i686.rpm
rpm -ihv cpp-4.4.6-4.el6.i686.rpm
rpm -ihv cloog-ppl-0.15.7-1.2.el6.i686.rpm
rpm -ihv gcc-4.4.6-4.el6.i686.rpm

  注意这里用的都是32位的包,我自己安装是tab出的x86_64的rpm包,别搞错了。

  网上的这个步骤是没有装c++的,而且再次运行configure,又报错说f77没装,看来一下才知道这个是forton的编译器。其实Packages里面都有相应的rpm包,都装上,中间会提示某些依赖没有,再在Packages目录里面找,都装上。

rpm -ivh libgfortran-4.4.7-11.el6.x86_64.rpm
rpm -ivh gcc-gfortran-4.4.7-11.el6.x86_64.rpm
rpm -ivh libstdc++-devel-4.4.7-11.el6.x86_64.rpm
rpm -ivh gcc-c++-4.4.7-11.el6.x86_64.rpm

  最后configure还是会报两个warning,一个是with-x=yes,一个是with-readline=yes。这两个是生产帮助文档的。不会用到。所以把这两个参数设定成no就ok了。

  为了配合RStudio的安装,在configure的时候还要加上 --enable-R-shlib=yes 来产生 libR.so的包

./configure --with-x=no --with-readline=no --enable-R-shlib=yes  

  终于configure通过了,然后就是漫长的make过程。然后就是make install,搞定!

  R的命令就在源码目录的bin目录下面。

CentOS6.5下编译R源码并安装Spark R的更多相关文章

  1. Nginx (一)Windows下编译Nginx源码以及安装 nginx for windows方法步骤

    转载自: http://apps.hi.baidu.com/share/detail/11192699#content Nginx介绍: Nginx ("engine x")是一个 ...

  2. Windows 10 x64 下编译 Hadoop 源码

    Windows 10 x64 下编译 Hadoop 源码 环境准备 Hadoop并没有提供官方的 Windows 10 下的安装包,所以需要自己手动来编译,官方文档中 BUILDING.txt 文件中 ...

  3. Windows下编译live555源码

    Windos下编译live555源码 环境 Win7 64位 + VS2012 步骤 1)源码下载并解压 在官网上下载最新live555源码,并对其进行解压. 2)VS下建立工程项目 新建Win32项 ...

  4. ubuntu下编译VLC源码

    http://blog.csdn.net/beitiandijun/article/details/9225591ubuntu下编译VLC源码 分类: 视频处理 2013-07-02 17:33 57 ...

  5. Windows,linux下编译qt源码(比较简单)

    一.linux下静态编译qt源码 1.取到qt源码并解压到文件夹 2.cd到qt目录下 3.使用configure生成makefile ./configure–prefix /opt/qtstatic ...

  6. CentOS6.5上编译OpenJDK7源码

    本文地址:http://www.cnblogs.com/wuyudong/p/build-openjdk7.html,转载请注明源地址. 采用开源的OpenJDK版本,获取其源码的方式有两种: 通Me ...

  7. 【转】在Ubuntu下编译Android源码并运行Emulator

    原文网址:http://www.mcuos.com/thread-4553-1-1.html 建立编译环境 1.在VirtualBox上安装Ubuntu 2.安装JDK   $ sudo apt-ge ...

  8. mac下编译node源码

    看过一篇win7 64x下面编译node的文章,链接地址:编译nodejs及其源码研究 下面学习一下在mac下面如何编译node源码. 过程也挺简单. 1.下载源码. > mkdir nodes ...

  9. ubuntu18.04.2下编译openjdk9源码

    最近在看<深入理解Java虚拟机 第二版>这本书,上面有关于自己编译OpenJDK源码的内容.自己根据书里的指示去操作,花了三天的时间,重装了好几次Ubuntu(还不知道快照这个功能,好傻 ...

随机推荐

  1. Photoshop显示RGB值问题

    Bmp与JPEG格式的不同之处在哪里? 使用OpenCV读写图像,然后由Photoshop显示时候结果并不相同,使用jpg格式的图像灰度值明显大于bmp格式,但jpg格式的显示信息是错误的. 过程: ...

  2. Windows Live Writer 历史Blog修改的功能

    其实 WLW 有历史Blog修改的功能,我只是一直没有找到,就在打开“最近发布的日志”里面, 位于屏幕的右侧“打开”列表下. 最近发现记忆力越来越差了,BLOG看来是必须的了.

  3. (转)基于MVC4+EasyUI的Web开发框架经验总结(12)--利用Jquery处理数据交互的几种方式

    http://www.cnblogs.com/wuhuacong/p/4085682.html 在基于MVC4+EasyUI的Web开发框架里面,大量采用了Jquery的方法,对数据进行请求或者提交, ...

  4. Spark中Task,Partition,RDD、节点数、Executor数、core数目的关系和Application,Driver,Job,Task,Stage理解

    梳理一下Spark中关于并发度涉及的几个概念File,Block,Split,Task,Partition,RDD以及节点数.Executor数.core数目的关系. 输入可能以多个文件的形式存储在H ...

  5. Golang实现常用排序算法

    主函数package main import ( "fmt" "math/rand" "sort" "time") co ...

  6. Java子类对于父类中static方法的继承

    今天看到了Java中子类继承父类的一个相关讨论,在网上综合了各家的观点,写下了一篇简短的总结. 问题如下,在父类中含有staic修饰的静态方法,那么子类在继承父类以后可不可以重写父类中的静态方法呢? ...

  7. [frontend] 根据文字长度 自适应宽度 自适应高度+ Uncaught ReferenceError: xxx is not defined at HTMLDivElement.onclick

    CSS一行代码就可以解决第一个问题: 1.1 根据文字长度,自适应标签宽度 解决方法:把width的设置删掉,加一行代码 display:table; .tag-footdetail{  /*widt ...

  8. 在微信小程序里使用 watch 和 computed

    在开发 vue 的时候,我们可以使用 watch 和 computed 很方便的检测数据的变化,从而做出相应的改变,但是在小程序里,只能在数据改变时手动触发 this.setData(),那么如何给小 ...

  9. 我的网站恢复访问了,http://FansUnion.cn

    博客网站 http://FansUnion.cn 恢复访问了. 周末,发表几篇原创文章.

  10. 在做公司项目是时,昨天晚上还好的,但是第二天启动tomcat发现tomcat启动了,但是没把项目启动起来

    1.问题:在做公司项目是时,昨天晚上还好的,但是第二天启动tomcat发现tomcat启动了,但是没把项目启动起来 2.问题排除: 1)昨天晚上还好着呢,并且没改动代码,排除代码问题.日志中无报错信息 ...