centos 使用c++方式通过thrift来 调研hbase 之编译过程(thrift2)(hbase 2.2.3版本)

centos 编译hbase。
一、安装工具的下载以及源代码下载
    1. sudo yum -y groupinstall "Development Tools"

    2. sudo yum -y install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel python-devel ruby-devel zlib-devel openssl-devel

    3. wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz

    4. wget http://ftp.gnu.org/gnu/bison/bison-3.5.2.tar.gz 

    5. wget https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.gz

    6. wget https://github.com/libevent/libevent/releases/tag/release-2.1.11-stable/libevent-2.1.11-stable.tar.gz

    7. wget https://dist.apache.org/repos/dist/release/thrift/0.13.0/thrift-0.13.0.tar.gz

    8. wget http://archive.apache.org/dist/hbase/2.2.3/hbase-2.2.3-src.tar.gz
二、编译
   1.安装autoconf
     (1)tar xvf autoconf-2.69.tar.gz
     (2)cd ./autoconf-2.69/
     (3)./configure --prefix=/usr
     (4)make
     (5)make install
     
    2. 安装bison
     (1)tar xvf bison-3.5.2.tar.gz
     (2)cd ./bison-3.5.2/
     (3)./configure --prefix=/usr
     (4)make
     (5)make install
     
    3. 安装libevent
     (1)tar xvf libevent-2.1.11-stable.tar.gz
     (2)cd ./libevent-2.1.11-stable/
     (3)./configure --prefix=/usr/local/libevent
     (4)make && make install
     
    4. 安装boost
     (1)tar xvf boost_1_72_0.tar.gz
     (2)cd ./boost_1_72_0/
     (3)./bootstrap.sh --prefix=/usr/local/boost
     (4)./b2
     (5)./b2 install
 
    5. 安装thrift
     (1)cp /usr/local/boost/lib/libboost_unit_test_framework.a /usr/local/lib64/libboost_unit_test_framework.a
     (2)cp /usr/local/boost/lib/libboost_unit_test_framework.a /usr/lib64/libboost_unit_test_framework.a
     (3)tar xvf thrift-0.13.0.tar.gz
     (4)cd ./thrift-0.13.0/
     (5)./configure --libdir=/usr/lib --with-cpp --with-boost=/usr/local/boost --with-libevent=/usr/local/libevent --without-python --without-java
     (6)make && make install

    6. 生成接口文件(thrift2)
      (1)tar xvf hbase-2.2.3-src.tar.gz
      (2)cd ./hbase-2.2.3/
      (3)thrift --gen cpp ./hbase-thrift/src/main/resources/org/apache/hadoop/hbase/thrift2/hbase.thrift
      (4)将生成的gen-cpp目录拷贝到工程文件即可使用。
      
三、hbase运行环境配置(下面使用的是thrift2,hbase-example下使用的是thrift的库,会报错类似于找不到函数方法等错误)
    1. jdk配置
       https://www.cnblogs.com/ztone/p/10591748.html
       
    2. 关闭防火墙
       systemctl stop firewalld.service #停止firewall
       systemctl disable firewalld.service #禁止firewall开机启动
       
    3. 书写代码。注意配置路径
          代码见cpp文件夹中的DemoClient.cpp。(见资源。。。。)
       g++编译命令: g++ -DHAVE_NETINET_IN_H -o DemoClient -I${BOOST_INCLUDE} -I${THRIFT_DIR}  -I./gen-cpp -L${LIB_EVENT} -I${INCLUDE_EVENT}  -L${LIB_THRIFT}  -L${THRIFT_BIN} -L${LIB_DIR} -L${BOOST_LIB_DIR} -Iboost_thread-gcc-mt DemoClient.cpp ${GEN_SRC} -std=c++11 -lthrift -lthrift-0.13.0 -lthriftz -lthriftz-0.13.0 -lthriftnb-0.13.0 -lthriftnb -levent_openssl -levent_core -levent -levent_pthreads -levent_extra 
    
    4. 注意启动连接网络。
    
    5. 启动(重新打开官网编译好的hbase,上述无法编译生成thrift2(需要java来编译,麻烦,没必要),官网默认有,直接用)
       start_hbash.sh //启动hbase
       hbase-daemon.sh start thrift2  //启动thrift2
    6. 启动客户端程序。
       ./DemoClient master(域名) 9090(端口)    

      
      
      
      
      

      
      
      
      
      
     
     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值