美文网首页
编译安装openGauss 2.1.0版本

编译安装openGauss 2.1.0版本

作者: 奥利奥蘸墨水 | 来源:发表于2022-05-18 14:42 被阅读0次

    参考

    环境准备

    openGauss

    编译openGauss需要openGauss-server和binarylibs两个组件。

    • openGauss-server:openGauss的主要代码。可以从开源社区获取。下载完重命名成openGauss-server。
    • binarylibs:openGauss依赖的第三方开源软件,你可以直接编译openGauss-third_party代码获取,也可以从开源社区下载已经编译好的并上传的一个副本。我这里选用开源社区编译好的版本。下载完重命名成binarylibs。

    ** gcc和cmake都可以不安装*

    gcc

    gcc需要安装7.3.0以上的版本。

    1. 环境准备
    yum -y install gmp-devel #编译依赖此库
    yum -y install mpfr-devel #编译依赖此库
    yum -y install libmpc-devel #编译依赖此库
    yum -y install bzip2 #编译依赖此库                                     
    wget ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.15.tar.bz2 #编译依赖此库
    tar -jxvf isl-0.15.tar.bz2  
    cd isl-0.15  
    ./configure   
    make  
    make install
    
    1. gcc源码下载

      http://ftp.gnu.org/gnu/gcc/

    2. gcc源码编译

    tar xvf gcc-7.3.0.tar.gz
    
    chmod -R 777 gcc-7.3.0
    cd gcc-7.3.0
    
    ./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
    make -j4 #编译挺耗时的,请耐心等待
    make install
    
    1. 报错及解决办法
    gcc-7.3.0/host-x86_64-pc-linux-gnu/gcc/cc1: error while loading shared libraries: libisl.so.15: cannot open shared object file: No such file or directory
    make[3]: *** [s-selftest] Error 1
    make[3]: Leaving directory `/root/Downloads/gcc-7.3.0/host-x86_64-pc-linux-gnu/gcc'
    make[2]: *** [all-stage1-gcc] Error 2
    make[2]: Leaving directory `/root/Downloads/gcc-7.3.0'
    make[1]: *** [stage1-bubble] Error 2
    make[1]: Leaving directory `/root/Downloads/gcc-7.3.0'
    

    找不到库libisl.so

    解决方法是:加到"/etc/ld.so.conf"或用"LD_LIBRARY_PATH"。

    vi /etc/ld.so.conf #添加库的路径/usr/local/lib/

    然后终端命令行执行ldconfig,再重新编译。

    cmake

    cmake需要3.1.6以上的版本,这里直接下载最新版本

    解压出来的bin目录就有现成的二进制文件。同样软链接到/usr/bin目录。

    ln -s /home/pjr/gcc/cmake-3.23.1-linux-x86_64/bin/cmake cmake
    

    编译

    在openGauss-server目录下执行

    sh build.sh -m debug -3rd /sdc/binarylibs            # 编译安装debug版本的openGauss
    

    如下所示编译成功

    [root@localhost openGauss-server]# sh build.sh -m debug -3rd /sda/binarylibs/
    ROOT_DIR : /sda/openGauss-server
    package_internal.sh -m debug -3rd /sda/binarylibs/ -pkg server -mc off -nopkg -pm opengauss
    [makemppdb] 22-05-17 05:31:51: Make jobs number : 16
    [makemppdb] 22-05-17 05:31:51: script dir : /sda/openGauss-server/build/script
    [makemppdb] 22-05-17 05:31:51: Work root dir : /sda/openGauss-server
    WARNING: do not separate symbol in debug mode!
    [makemppdb] 22-05-17 05:35:13: Begin to make compile.
    
    [makemppdb] 22-05-17 05:43:13: Make compile successfully.
    
    • 编译后软件安装路径为:/sda/openGauss-server/mppdb_temp_install

    • 编译后的二进制放置路径为:/sda/openGauss-server/mppdb_temp_install/bin

    • 编译日志为:./build/script/makemppdb_pkg.log

    启动数据库

    导入环境变量,即可进行初始化和启动数据库。

    export CODE_BASE=/sda/openGauss-server/
    export GAUSSHOME=$CODE_BASE/mppdb_temp_install/
    export LD_LIBRARY_PATH=$GAUSSHOME/lib::$LD_LIBRARY_PATH
    export PATH=$GAUSSHOME/bin:$PATH
    
    source ~/.bashrc #使环境变量生效
    

    建立数据目录和日志目录:

    [user@linux sda]$ mkdir ~/data
    [user@linux sda]$ mkdir ~/log
    [user@linux sda]$ chown -R omm:dbgrp /sda/openGauss-server
    

    数据库初始化:

    gs_initdb -D /home/omm/data --nodename=db2
    

    启动数据库:

    gs_ctl start -D /home/omm/data -Z single_node -l /home/omm/log/opengauss.log
    

    相关文章

      网友评论

          本文标题:编译安装openGauss 2.1.0版本

          本文链接:https://www.haomeiwen.com/subject/sodaurtx.html