zstd安装_在ARM架构服务器上编译Greenplum6并制作rpm安装包
刘雪柏
诺基亚东软通信有限公司 高级软件工程师从事数据库相关工作aiden.liu@qq.com
Greenplum 是一款开源MPP数据分析平台,提供包括数据分析、机器学习和人工智能等特色功能。目前 Greenplum 的二进制发行版本只能运行在 X86 服务器。github上的Greenplum releases只有x86的发行版,没有提供ARM 发行版。Greenplum 是开源软件,我们可以通过编译 Greenplum 源代码自行构建 Greenplum 的 ARM 版本。
本文将详细讲述如何在 ARM 服务器上编译并打包开源版 Greenplum。
编译环境:CentOS Linux release 7.6.1810 (AltArch)
需要提前准备OS镜像、python依赖包、cmake、zstd-dev、Xerces、re2c、ninja、gporca等源码包配置编译环境,另外Greenplum编译需要Greenplum源码包。
下载并上传如下软件包到服务器上:
bcrypt-3.1.7.tar.gz
cffi-1.14.1.tar.gz
cryptography-3.0.tar.gz
enum34-1.1.10.tar.gz
epydoc-3.0.1.zip
gporca-3.106.1.tar.gz
gp-xerces-3.1.2-p1.tar.gz
greenplum-6.9.1-src-full.tar.gz
ipaddress-1.0.23.tar.gz
lockfile-0.12.2.tar.gz
ninja-1.10.0.tar.gz
paramiko-2.7.1.tar.gz
pbr-5.4.5.tar.gz
psutil-5.7.2.tar.gz
pycparser-2.20.tar.gz
PyNaCl-1.4.0.tar.gz
re2c-2.0.tar.gz
setuptools-33.1.1.zip
six-1.15.0.tar.gz
zstd-1.4.5.tar.gz
安装依赖包:
#yum -y install curl-devel bzip2-devel python-devel openssl-devel readline-devel perl-ExtUtils-Embed libxml2-devel openldap-devel pam pam-devel perl-devel apr-devel libevent-devel libyaml libyaml-devel libedit-devel libffi-devel
安装python依赖包:
安装setuptools
# cd setuptools-master
# python bootstrap.py
# python setup.py install
安装psutil
# cd psutil-5.7.2
# python setup.py install
安装pbr
# cd pbr-5.4.5
# python setup.py install
安装lockfile
# cd lockfile-0.12.2
# python setup.py install
安装pycparser
# cd pycparser-2.20
# python setup.py install
安装cffi
# cd cffi-1.14.1
# python setup.py install
安装six
# cd six-1.15.0
# python setup.py install
安装bcrypt
# cd bcrypt-3.1.7
# python setup.py install
安装PyNaCl
# cd PyNaCl-1.4.0
# python setup.py install
安装ipaddress
# cd ipaddress-1.0.23
# python setup.py install
安装enum34
# cd enum34-1.1.10
# python setup.py install
安装cryptography
# cd cryptography-3.0
# python setup.py install
安装paramiko
# cd paramiko-2.7.1
# python setup.py install
安装epydoc
# cd epydoc-3.0.1
# python setup.py install
安装cmake
# cd cmake-3.9.2
# ./bootstrap
# make
# make install
# /usr/local/bin/cmake --version
安装zstd
# cd zstd-1.4.5
# make
# make install
安装Xerces
# cd gp-xerces-3.1.2-p1
# ./configure
# make
# make install
安装re2c
# cd re2c-2.0
# ./autogen.sh
# ./configure
# make
# make install
安装ninja
# cd ninja-1.10.0
# ./configure.py --bootstrap
# cp ninja /usr/bin/
安装gporca
# cd gporca-3.106.1
# cmake -GNinja -H. -Bbuild
# vi libgpos/src/common/CStackDescriptor.cpp
第167行注释掉
# ninja install -C build
# echo /usr/local/lib >/etc/ld.so.conf
# ldconfig
编译greenplum6.9.1
准备完成后可以编译greenplum6.9.1了
# cd gpdb_src/
# ./configure --with-perl --with-python --with-libxml --prefix=/usr/local/gpdb
#make
如果make成功了,就可以开始制作rpm安装包了。
安装rpm-build
yum install rpm-build
在/root目录下建rpmbuild目录
mkdir-p~/rpmbuild/BUILD~/rpmbuild/RPMS~/rpmbuild/BUILDROOT ~/rpmbuild/SRPMS ~/rpmbuild/SOURCES ~/rpmbuild/SPECS
编辑greenplum6.9.1.spec
vi ~/rpmbuild/SPECS/greenplum6.9.1.spec
修改greenplum源代码目录名为greenplum-6.9.1并压缩:
mv gpdb_src greenplum-6.9.1
tar czvf greenplum-6.9.1.tar.gz greenplum-6.9.1
把greenplum源码包复制到rpmbuild源代码目录
cp greenplum-6.9.1.tar.gz ~/rpmbuild/SOURCES/
制作rpm安装包:
rpmbuild -ba ~/rpmbuild/SPECS/greenplum6.9.1.spec
查看制作好的rpm安装包:
完。
I Love PG
关于我们
中国开源软件推进联盟PostgreSQL分会(简称:中国PG分会)于2017年成立,由国内多家PostgreSQL生态企业所共同发起,业务上接受工信部中国电子信息产业发展研究院指导。中国PG分会是一个非盈利行业协会组织。我们致力于在中国构建PostgreSQL产业生态,推动PostgreSQL产学研用发展。
欢迎投稿
做你的舞台,show出自己的才华 。
投稿邮箱:partner@postgresqlchina.com
——愿能安放你不羁的灵魂
技术文章精彩回顾PostgreSQL学习的九层宝塔PostgreSQL职业发展与学习攻略2019,年度数据库舍 PostgreSQL 其谁?Postgres是最好的开源软件PostgreSQL是世界上最好的数据库从Oracle迁移到PostgreSQL的十大理由从“非主流”到“潮流”,开源早已值得拥有PG活动精彩回顾创建PG全球生态!PostgresConf.CN2019大会盛大召开首站起航!2019“让PG‘象’前行”上海站成功举行走进蓉城丨2019“让PG‘象’前行”成都站成功举行中国PG象牙塔计划发布,首批合作高校授牌仪式在天津举行群英论道聚北京,共话PostgreSQL相聚巴厘岛| PG Conf.Asia 2019 DAY0、DAY1简报相知巴厘岛| PG Conf.Asia 2019 DAY2简报独家|硅谷Postgres大会简报直播回顾 | Bruce Momjian:原生分布式将在PG 14版本发布PG培训认证精彩回顾中国首批PGCA认证考试圆满结束,203位考生成功获得认证!中国第二批PGCA认证考试圆满结束,115位考生喜获认证!重要通知:三方共建,中国PostgreSQL认证权威升级!近500人参与!首次PGCE中级、第三批次PGCA初级认证考试落幕!2020年首批 | 中国PostgreSQL初级认证考试圆满结束一分耕耘一分收获,第五批次PostgreSQL认证考试成绩公布
PG专辑预览阅读开源软件联盟PostgreSQL分会专辑之活动篇
zstd安装_在ARM架构服务器上编译Greenplum6并制作rpm安装包相关推荐
- cmake 版本 arm_在 ARM 架构服务器上编译 Greenplum6并制作rpm安装包
Greenplum 是一款开源MPP数据分析平台,提供包括数据分析.机器学习和人工智能等特色功能.目前 Greenplum 的二进制发行版本只能运行在 X86 服务器.github上的Greenplu ...
- linux安装大批量rpm包,linux制作rpm安装包
linux制作rpm二进制安装包 有好多朋友问到怎么制作rpm包,可不可把其它服务器上编译好的软件目录复杂到其它服务器上直接应用等等.这里通过案例由简单到高级来一一讲解. 此方法是通过编写spec文件 ...
- lighttpd安装_如何在Ubuntu服务器上安装Lighttpd
lighttpd安装 In this tutorial, we will walk you through how to install Lighttpd on Ubuntu Server. Ligh ...
- 80核处理器_华为首款Arm架构服务器CPU鲲鹏920发布:64核主频2.6GHz ,性能创纪录!...
2019年1月7日,华为正式推出业界最高性能Arm架构服务器芯片--鲲鹏920(Kunpeng 920),以及基于鲲鹏920的三款TaiShan服务器.华为云服务.同华为还宣布携手产业伙伴推动Arm的 ...
- 在英特尔架构服务器上构建基于矢量包处理(VPP)的快速网络协议栈
在英特尔®架构服务器上使用矢量包处理(VPP)构建快速的网络栈 Build a Fast Network Stack with Vector Packet Processing (VPP) on an ...
- arm放弃服务器芯片,ARM溃败:Applied Micro拆分ARM架构服务器芯片业务
上月下旬通信芯片厂商MACOM达成最终协议以约7.7亿美元收购Applied Micro,日前则已决定只留下后者的高速载波和数据中心连网芯片业务,分拆它的ARM架构服务器芯片业务,这对ARM在服务器芯 ...
- 拆服务器芯片,ARM溃败:Applied Micro拆分ARM架构服务器芯片业务
上月下旬通信芯片厂商MACOM达成最终协议以约7.7亿美元收购Applied Micro,日前则已决定只留下后者的高速载波和数据中心连网芯片业务,分拆它的ARM架构服务器芯片业务,这对ARM在服务器芯 ...
- 中国芯片开创了ARM架构服务器芯片市场,高通如今希望跟着喝汤
据称美国手机芯片企业高通计划再次进入服务器芯片市场,以ARM架构服务器芯片争取客户,这是它在两年多前失败之后再次进入,可能是因为它看到了中国芯片企业已成功打开局面,希望跟着喝汤. ARM阵营进入服务器 ...
- linux rpm安装包忽视所有依赖强制安装
前言 在系统离线情况下,无法通过rpm直接安装依赖包,将rpm包上传到服务器上,linux rpm安装包忽视所有依赖强制安装 解决方法 rpm -Uvh *.rpm --nodeps --force ...
最新文章
- 推荐一些软件,平时工作中可能会用到【不断更新】
- 关于Block Formatting Context--BFC和IE的hasLayout
- 七彩虹智能主板设置U盘启动教程
- 矩阵运算_SLAM中用到的矩阵计算_基本公式及知识汇总
- kubernetes视频教程笔记 (29)-安全-认证Authentication
- 适合新手绘制房间布置图的电脑软件
- r语言boxcox异方差_R教程-15:线性回归中的异方差
- java 颜色渐变算法_颜色渐变的RGB计算
- 前端开发-CSS快速掌握上手知识详细总结
- 交付管理——怎样构建项目团队
- minecraft兑换码领取!
- 在数据库应用系统中数据库的开发
- UI设计都有哪些好用的设计工具
- Thumbnail 图片压缩
- 记一次聚拢Android线程实操
- 为什么无名管道只能用于具有亲缘关系的进程之间通信
- 论文阅读《Vision-Aided RAIM: A New Method for GPS Integrity Monitoring in Approach and Landing Phase》1
- 百钱买百鸡(C语言)
- NC65查询期末余额sql
- 【MD5】什么是MD5?md5的简要描述
热门文章
- 《深入浅出DPDK》学习思维导图
- 【转】POSIX 是什么?让我们听听 Richard Stallman 的诠释 | Linux 中国
- docker 安装镜像失败_docker(mips 64)安装中文字符集失败
- java query object_java queryforobject
- java反射性能问题_Java反射应用实例java反射的性能问题 | 学步园
- python打包文件提示错误
- Java线程的一些api
- python怎么在散点图上画圆圈_matplotlib散点中的标记点
- Shell else if mysql_linux shell中 if else以及大于、小于、等于逻辑表达式介绍
- linux时间有几个,Linux下与文件相关的几个时间的介绍