linux 下 CDH4.5编译
1、安装JDK
JDK:我这里 安装的是jdk1.6.0_23
1.1:给文件执行的权限chmod u+x jdk-6u23-linux-x64.bin
1.2: ./jdk-6u23-linux-x64.bin ,会生成一个jdk1.6.0_23 的文件
1.3: 在/etc/profile 文件配置添加环境变量即可
export JAVA_HOME=/home/hadoop/jdk1.6.0_23
export PATH=$PATH:$JAVA_HOME/bin
输入java-version 如果有版本出来就说明成功。
2、安装maven
下载安装包后解压 在/etc/profile 配置路劲即可
export MAVEN_HOME=/home/hadoop/apache-maven-3.2.1
export PATH=$PATH:$MAVEN_HOME/bin
输入 mvn -v
[hadoop@master ~]$ mvn -v
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T09:37:52-08:00)
Maven home: /home/hadoop/apache-maven-3.2.1
Java version: 1.6.0_23, vendor: Sun Microsystems Inc.
Java home: /home/hadoop/jdk1.6.0_23/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"
说明安装成功
3、gcc,g++
参照我前面一片文章 linux centos 装g++安装不了
4、protoc
我安装的是protobuf-2.4.1
tar zxvf protobuf-2.4.1.tar.gz
cd protobuf-2.4.1
./configure && make && make check && make install
环境变量配置:
export PROTOC_HOME=/home/hadoop/protobuf-2.4.1
export PATH=$PROTOC_HOME/src:$PATH
需要注意的是2.4.1版本 没有 目录bin用src代替,这个我折腾了很久。
[hadoop@master ~]$ protoc --version
libprotoc 2.4.1
说明安装成功
5、其他依赖
顺序执行以下命令
yum install cmake
yum install openssl-devel
yum install ncurses-devel
6、ant
网上有些资料说要安装ant,我没有安装也发现可以照样编译
7、 编译CDH4.5源码
tar -zxvf hadoop-2.0.0-cdh4.5.0.tar.gz
进入目录 cd $HADOOP_HOME/src ,后执行 mvn package -DskipTests -Pdist,native,docs (编译的时候要等一段时间)
第一次执行的时候遇到一个错误,后面删掉整个文件重新执行就可以
http://pan.baidu.com/s/1hqJys9u 编译完后的下载地址
查看日志提示编译完成:
[INFO] Apache Hadoop Rumen ............................... SUCCESS [ 6.738 s]
[INFO] Apache Hadoop Gridmix ............................. SUCCESS [ 4.798 s]
[INFO] Apache Hadoop Data Join ........................... SUCCESS [ 2.669 s]
[INFO] Apache Hadoop Extras .............................. SUCCESS [ 3.134 s]
[INFO] Apache Hadoop Pipes ............................... SUCCESS [ 18.866 s]
[INFO] Apache Hadoop Tools Dist .......................... SUCCESS [ 3.303 s]
[INFO] Apache Hadoop Tools ............................... SUCCESS [ 0.027 s]
[INFO] Apache Hadoop Distribution ........................ SUCCESS [ 51.497 s]
[INFO] Apache Hadoop Client .............................. SUCCESS [ 16.715 s]
[INFO] Apache Hadoop Mini-Cluster ........................ SUCCESS [ 4.659 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 14:12 min
[INFO] Finished at: 2014-07-23T00:11:20-08:00
[INFO] Final Memory: 93M/238M
文件位置在: ../src/hadoop-dist/target 目錄下
遇到异常:第一次执行的时候遇到异常:
[ERROR] Failed to execute goal org.apache.avro:avro-maven-plugin:1.7.4:schema
(generate-avro-test-sources) on project hadoop-common:
Execution generate-avro-test-sources of goal org.apache.avro:avro-maven-plugin:1.7.4:schema
failed: Plugin org.apache.avro:avro-maven-plugin:1.7.4 or one of its dependencies
could not be resolved: Failed to collect dependencies at org.apache.avro:avro-maven-plugin:jar:1.7.4 ->
org.apache.avro:avro-compiler:jar:1.7.4 -> commons-lang:commons-lang:jar:2.6: Failed to read artifact
descriptor for commons-lang:commons-lang:jar:2.6: Could not transfer
artifact org.apache.commons:commons-parent:pom:17 from/to central
(http://repo.maven.apache.org/maven2): GET request of: org/apache/commons/commons-parent/17/commons-parent-17.pom from central
failed: Connection reset -> [Help 1]
这个异常没有解决
linux 下 CDH4.5编译的更多相关文章
- Linux下指定版本编译安装LAMP
说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...
- Linux下使用javac编译
Linux下使用javac编译Hadoop程序 首先要配置好Hadoop, 给出两个教程 Hadoop安装教程单机/伪分布式配置Hadoop2.6.0/Ubuntu14.04 Hadoop集群安装配置 ...
- Linux下使用NDK编译FFMPEG(libstagefright)
这个月要负责一个项目,使用FFMPEG渲染视频,主要是Android端的,由于性能要求,要使用硬解码,但网上大多数教程都是没有libstagefright的,所以个人觉得,生成的so库文件也是没有开启 ...
- 在ubunt14.04(linux)下利用cmake编译运行opencv程序
今天在电脑上安装好了opencv环境,迫不及待的想写个程序来测试一下.但是在windows下我们用vs等集成开发工具.可是在linux下我们应该怎么办呢? 这里我们用了opencv推荐的cmake来编 ...
- Linux下php5.3编译oracle客户端
因项目需要在linux下进行php5.3的oracle客户端编译,简要介绍一下步骤及走过的弯路. 1.下载Oracle客户端程序包,其中包含OCI.OCCI和JDBC-OCI等相关文件. 1.1下载文 ...
- Linux下源码编译安装rpy2
R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...
- 在Linux下使用gcc编译mesa文件报undefined reference to symbol 'sin@@GLIBC_2.2.5和DSO missing from command line两个错误的解决方案
一.概述 在Linux系统下使用gcc编译用C语言写的mesa的示例程序. 环境:Ubuntu Server 18.04.1 二.问题的出现 在Ubuntu下安装好mesa所需的库文件,将目标文件从g ...
- Linux下编辑、编译、调试命令总结——gcc和gdb描述
GCC gcc是linux系统集成的编译器.在linux环境下编辑程序,首先需要克服的便是没有集成开发环境的一键式操作所带来的麻烦.这其中涉及命令行操作.编译选项的设定.文件依赖关系的书写(makef ...
- linux下使用mingw编译NSIS-3.03
简述 最近在研究使用NSIS做安装包,语法不算复杂,插件也很多,中文资料也不少,还挺好用的.先后用NSIS做出了安装和卸载需要输入密码,通过自定义页面实现安装时候选择多个目录.安装的时候输入配置文件信 ...
随机推荐
- XSS的原理分析与解剖(第二篇)
0×01 前言: 上节(http://www.freebuf.com/articles/web/40520.html)已经说明了xss的原理及不同环境的构造方法.本期来说说XSS的分类及挖掘方法. 当 ...
- (转)Linux 多线程编程---pthread_testcancel()等讲解
1. 所谓线程就是“一个进程内部的一个控制序列”.也就是一个进程内部的并行的基础! 2. Linux进程可以看成只有一个控制线程: 一个进程在同一时刻只做一件事情.有了多个控制线程 ...
- 如何在一个for语句中迭代多个对象(2.7)
如何在一个for语句中迭代多个对象 总结: 并行迭代使用zip(l1, l2, l3) 每次迭代从3个列表里各取一个数据 串行迭代使用itertools.chain(l1, l2, l3) 相当于把3 ...
- 使用linkedhashmap实现LRU(最近最少使用缓存算法)
import java.util.LinkedHashMap; import java.util.Map; public class LRUCache<K, V> extends Link ...
- c#网络通信框架networkcomms内核解析之一 消息传送2
networkcomms.net 来自英国的网络通信框架 官方网址 www.networkcomms.net 中文网址www.networkcomms.cn 在网络通信程序中,本地的类或者对象,要传输 ...
- 剑指offer——51丑数
题目描述 把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. / ...
- Servlet.init() for servlet [springmvc] threw exception
项目还没开始做,就碰到那么多问题.. 报错一:/oa/news/%E6%A0%8F%E7%9B%AE%E7%AE%A1%E7%90%86.jsp 1.一开始是jsp的页面名称为中文,改了 2.接着仍然 ...
- netty源码分析 - Recycler 对象池的设计
目录 一.为什么需要对象池 二.使用姿势 2.1 同线程创建回收对象 2.2 异线程创建回收对象 三.数据结构 3.1 物理数据结构图 3.2 逻辑数据结构图(重要) 四.源码分析 4.2.同线程获取 ...
- wpf中datagrid绑定数据源发生改变
1.若datagrid绑定的数据源是同一个的话,即使里面的数据不同.页面也不会刷新,则需要重置数据源,再绑定.处理如下: datagrid1.ItemsSource=ListModule; 若List ...
- sanic之websocket路由
在某些时候,需要建立websocket路由,来建立长链接,来实时传输数据,就比如一些聊天应用,就有实时音视频,需要实时传出状态 在sanic框架中支持两种websocket路由方式,有一种是再app中 ...