Greenplum的编译

本文档详细介绍了如何在CentOS 6.4系统上为Greenplum搭建开发环境并进行源码编译,包括添加用户、安装开发包(如gcc、cmake、python等)、编译gporca、gpdb、postgis、pgbouncer、jdbc和odbc等组件的过程。
摘要由CSDN通过智能技术生成

操作系统:centos6.4 x64最小安装

添加用户

$ useradd gpadmin
$ passwd gpadmin

把gpadmin加入sudoer,之后的操作都在gpadmin用户下完成。

搭建开发环境

# linux基本环境
$ sudo yum install -y bzip2 cmake gcc gcc-c++ gdb git libtool lrzsz make man net-tools sysstat unzip vim wget zip

# 数据库开发环境
$ sudo yum install -y apr-devel apr-util-devel bison bzip2-devel c-ares-devel flex java-1.8.0-openjdk java-1.8.0-openjdk-devel json-c-devel krb5-devel libcurl-devel libevent-devel libkadm5 libxml2-devel libxslt-devel libyaml-devel openldap-devel openssl-devel pam-devel perl perl-devel perl-ExtUtils-Embed readline-devel unixODBC-devel zlib-devel

一般来说,上面安装的开发包足够一般的数据库编译或安装使用了。

如果Greenplum版本较新(>=5X_STABLE),CentOS 6.4官方的开发包版本可能无法满足Greenplum(比如glibc不支持C11标准,python版本较低、cmake版本较低等),也可能会缺少一些其他的包。

可以通过源码编译或者非官方yum源安装合适的版本。

编译开发包

gcc-4.8.5

Greenplum较新的代码要用到C11/C++11标准,要求gcc版本4.7以上。由于系统自带或yum安装的gcc版本是4.4.7,需要编译更高版本的gcc。

编译gcc需要先编译gmp、mpfr、mpc,按照顺序编译安装。

# 编译gmp
$ wget https://gmplib.org/download/gmp/gmp-6.1.0.tar.bz2
$ tar -jxf gmp-6.1.0.tar.bz2
$ cd gmp-6.1.0
$ ./configure --prefix=/home/gpadmin/BuildEnv/gcc
$ make && make install

# 编译mpfr
$ wget https://www.mpfr.org/mpfr-3.1.4/mpfr-3.1.4.tar.bz2
$ tar -jxf mpfr-3.1.4.tar.bz2
$ cd mpfr-3.1.4
$ ./configure --prefix=/home/gpadmin/BuildEnv/gcc --with-gmp=/home/gpadmin/BuildEnv/gcc
make && make install

# 编译mpc
$ wget https://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
$ tar -zxf mpc-1.0.3.tar.gz
$ cd mpc-1.0.3
$ ./configure --prefix=/home/gpadmin/BuildEnv/gcc --with-gmp=/home/gpadmin/BuildEnv/gcc --with-mpfr=/home/gpadmin/BuildEnv/gcc
$ make && make install

# 编译gcc
$ wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.8.5/gcc-4.8.5.tar.bz2
$ tar -jxf gcc-4.8.5.tar.bz2
$ cd gcc-4.8.5
$ export LD_LIBRARY_PATH=/home/gpadmin/BuildEnv/gcc/lib:$LD_LIBRARY_PATH
$ ./configure --prefix=/home/gpadmin/BuildEnv/gcc --with-gmp=/home/gpadmin/BuildEnv/gcc --with-mpfr=/home/gpadmin/BuildEnv/gcc --with-mpc=/home/gpadmin/BuildEnv/gcc --disable-multilib
$ make && make install

# 设置环境变量
$ vi ~/.bashrc
export LD_LIBRARY_PATH=/home/gpadmin/BuildEnv/gcc/lib:/home/gpadmin/BuildEnv/gcc/lib64:$LD_LIBRARY_PATH
export PATH=/home/gpadmin/BuildEnv/gcc/bin:$PATH
$ source ~/.bashrc

cmake3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值