llvm + gpdb 环境搭建

简介: 主要是为了继续研究llvm 对greenplum的性能提升

编译安装llvm 是为了更好的去研究GPDB 对llvm 的支持
一、准备阶段
使用的版本是centos 7

基础环境配置  

gcc = 4.8.5
python = 2.7.5 (注释 必须 >= 2.7)
perl = 5.16.3
cmake = 3.5.0
二、源码下载
使用如下命令下载源码 llvm 版本为 3.7.1

#!/bin/bash
# 下载 llvm 3.7.1
wget http://releases.llvm.org/3.7.1/llvm-3.7.1.src.tar.xz
tar xvf llvm-3.7.1.src.tar.xz 
mv llvm-3.7.1.src llvm

# 下载 clang

wget http://releases.llvm.org/3.7.1/cfe-3.7.1.src.tar.xz
tar -xvf cfe-3.7.1.src.tar.xz
mv cfe-3.7.1.src clang

# 下载 compiler-rt

wget http://releases.llvm.org/3.7.1/compiler-rt-3.7.1.src.tar.xz
tar xvf compiler-rt-3.7.1.src.tar.xz
mv compiler-rt-3.7.1.src compiler-rt

# 下载 clang-tools-extra

wget http://releases.llvm.org/3.7.1/clang-tools-extra-3.7.1.src.tar.xz
tar xvf clang-tools-extra-3.7.1.src.tar.xz
mv clang-tools-extra-3.7.1.src extra

# 将文件移动到相应的 llvm 目录下

mv  compiler-rt/ ./llvm/projects
mv  extar/ ./clang/tools
mv  clang/        ./llvm/tools/

# 执行编译安装
cd llvm
mkdir build
cd build
../configure --enable-optimized
make
make install
clang --version (会显示具体的安装版本)
#具体文件树形式
##########################################################
# llvm
# |
# - projects
# | |
# | _ complier-rt
# |
# _ tools
# |
# _ clang
# |
# _ tools
# |
# - extra
##########################################################

  1. 接下来是Greenplum的安装

# 去greenplum的github上clone源码
# 执行具体的编译工作
./configue --enable-codegen --prefix=/home/gpadmin/gp --enable-debug
make
make install
#############
一般情况下 ./configure 会报一个 googletest的错误 我们可以直接将codegen的cmakelist.txt关于这块测试的代码注释掉就ok了
接下来我们就按照分布式安装就ok了

目录
相关文章
|
JSON Java Linux
07-PDI(Kettle)源码编译8.2.0.0.R版本
文章目录 07-PDI(Kettle)源码编译8.2.0.0.R版本 1.安装PDI8.2.0.0.R的parent工程到本地 1.1配置Maven的settings.xml文件 1.2安装PDI源码依赖的parent工程到本地仓库
07-PDI(Kettle)源码编译8.2.0.0.R版本
|
缓存 Ubuntu Java
Tool之Bazel:Bazel的简介、安装、使用方法之详细攻略
Tool之Bazel:Bazel的简介、安装、使用方法之详细攻略
|
6月前
|
Java Linux DataX
DataX入门指南:快速部署和安装指南
DataX入门指南:快速部署和安装指南
1670 2
DataX入门指南:快速部署和安装指南
|
机器学习/深度学习 人工智能 算法
milvus源码编译
milvus源码编译
136 1
|
Oracle 关系型数据库 数据库
MogDB/openGauss 生态工具-MTK(Migration ToolKit) 数据库迁移
MogDB/openGauss 生态工具-MTK(Migration ToolKit) 数据库迁移
348 0
MogDB/openGauss 生态工具-MTK(Migration ToolKit) 数据库迁移
|
关系型数据库 Linux PostgreSQL
LINUX下载编译libpq(postgresql)
LINUX下载编译libpq(postgresql)
500 0
|
算法 计算机视觉
jpeglib使用指南
您可以到http://www.ijg.org/网站下载libjpeg的源码, IJG JPEG Library就是jpeg压缩库,是以源码的形式提供给软件开发人员的,当然在软件包里也有编译好的库文件,我们这里就只用到其中的libjpeg.lib,jconfig.h,jmorecfg.h,jpeglib.h这几个文件,下面我就介绍一下怎样在自己的程序里嵌入图像压缩功能。
1453 0
|
SQL 安全 OLTP
OpenGauss入门教程
OpenGauss入门教程
874 0
|
Android开发 C语言 C++
《深入理解LLVM》第一章 LLVM简介
第一章 LLVM简介 作者:史宁宁 1.1 LLVM是什么 LLVM是什么?这是一个虽然基础,但是也曾经让很多新入门的人迷惑的一个问题。从字面上来讲,LLVM(Low Level Virtual Machine)是一个底层虚拟机,LLVM曾经有一部分功能对虚拟机有所帮助。
2527 0
|
Serverless
Aliyun Serverless VSCode Extension v1.10.0 发布
Aliyun Serverless VSCode Extension 是阿里云 Serverless 产品 函数计算 Function Compute 的 VSCode 插件,该插件结合了函数计算 Fun 工具以及函数计算 SDK ,是一款 VSCode 图形化开发调试函数计算以及操作函数计算资源的工具。
1140 0