<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 超實(shí)用干貨(1)-Apache greenplum在aarch64架構體系的適配編譯

超實(shí)用干貨(1)-Apache greenplum在aarch64架構體系的適配編譯

發(fā)布人:中電金信人 時(shí)間:2022-06-06 來(lái)源:工程師 發(fā)布文章
超實(shí)用干貨(1)-Apache greenplum在aarch64架構體系的適配編譯


編譯環(huán)境

操作系統:EulerOS 2.0 sp8

● 內核:4.19.36

● CPU:aarch64


編譯所需軟件類(lèi)別


cmake-3.23.0-rc1.tar.gz

下載地址:

https://cmake.org/files/v3.23/cmake-3.23.0-rc1.tar.gz


gp-xerces-3.1.2-p1.zip

下載地址:

https://github.com/greenplum-db/gp-xer ces/archive/refs/tags/v3.1.2-p1.zip


ninja-1.10.2.zip

下載地址:

https://github.com/ninja-build/ninja/archive /refs/tags/v1.10.2.zip


re2c-3.0.zip

下載地址:

https://github.com/skvadrik/re2c/archive/refs/ta gs/3.0.zip


zstd-1.5.2.tar.gz

下載地址:

https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-1.5.2.tar.gz


配置yum源,并安裝如下依賴(lài)包


autoconf

automake

libtool

gcc

curl-devel

bzip2-devel

python-devel

openssl-devel

readline-devel

perl-ExtUtils-Embed

libxml2-devel

openldap-devel

pam

pam-devel

apr-devel

libevent-devel

libyaml

libyaml-devel

libedit-devel

libffi-devel

bison

flex

flex-devel


安裝python依賴(lài)包


# 使?pip 進(jìn)?python包管理,命令如下:

pip install --upgrade pip

pip install --no-cache-dir lockfile paramiko setuptools psutil conan


逐個(gè)安裝軟件列表內容


可以根據每個(gè)軟件的readme?件進(jìn)?安裝


編譯


編譯GreenPlum 需要cmake和gcc,在上?操作中已經(jīng)配置完成,開(kāi)始前可通過(guò)如下命令進(jìn)?確認


檢查gcc版本


[root@RI_BDTL ~]# gcc --version

gcc (GCC) 7.3.0


檢查cmake版本


[root@RI_BDTL ~]# cmake --version

cmake version 3.23.0-rc1


準備源碼包


6.19.1-src-full.tar.gz

下載地址:

https://github.com/greenplum-db/gpdb/releases/download/6.19.1/ 6.19.1-src-full.tar.gz


修改源碼 (6.19.1源碼中沒(méi)有對平臺判斷,修改為aarch64?持的指令)


[root@RI_BDTL packages]# tar -zxvf 6.19.1-src-full.tar.gz

[root@RI_BDTL packages]# vi gpdb_src/src/backend/gporca/libgpos/includ e/gpos/utils.h

修改 gpdb_src/src/backend/gporca/libgpos/include/gpos/utils.h 中22?和23?為:

#define GPOS_ASMFP asm volatile("mov %0, fp" : "=g"(ulp));

#define GPOS_ASMSP asm volatile("mov %0, sp" : "=g"(ulp));


編譯,編譯命令使?的readme中的命令,默認是帶orca編譯的,這?通過(guò) --enable-orca 顯示指定了


[root@RI_BDTL packages]# cd gpdb_src

# Configure build environment to install at /usr/local/greenplum-6.19.1

[root@RI_BDTL gpdb_src]# export LD_LIBRARY_PATH=/usr/local/gp-xerces/l ib/ CFLAGS="-I/usr/local/gp-xerces/include" LDFLAGS="-L/usr/local/gp-x erces/lib/"

[root@RI_BDTL gpdb_src]# ./configure --enable-orca --with-perl --withpython --with-libxml --with-gssapi --prefix=/usr/local/greenplum-6.19.1

[root@RI_BDTL gpdb_src]# make -j8

[root@RI_BDTL gpdb_src]# make -j8 install


漫?的等待之后,出現如下提示,就說(shuō)明編譯成功了


Greenplum Database installation complete


查看編譯結果


[root@RI_BDTL local]# ls -lrt greenplum-6.19.1/

總?量 32

drwx------ 3 gpadmin gpadmin 4096 2? 11 15:47 docs

drwx------ 4 gpadmin gpadmin 4096 2? 11 16:11 share

drwx------ 4 gpadmin gpadmin 4096 2? 11 16:14 include

drwx------ 5 gpadmin gpadmin 4096 2? 11 16:14 lib

-rw------- 1 gpadmin gpadmin 491 2? 11 16:14 greenplum_path.sh

drwx------ 2 gpadmin gpadmin 4096 2? 11 16:14 libexec

drwx------ 2 gpadmin gpadmin 4096 2? 11 16:14 sbin

drwx------ 7 gpadmin gpadmin 4096 2? 11 16:14 bin


總結


編譯過(guò)程并不復雜,難點(diǎn)在于有?些依賴(lài)包安裝的不全,導致編譯不成功。


另外就是源碼包6.19.1中對aarch64指令集的修改,使GreenPlum可以正常編譯。


*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。



關(guān)鍵詞: 干貨

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>