文章目录
- 一、系统要求
- 二、安装环境准备
- 三、安装 gStore
- 3.1 获取gStore
- 3.2 gStore编译
- 第一步:gStore的github主页地址:https://github.com/pkumod/gStore,使用clone方式
- 第二步:进入gStore目录下,通过命令:cd gStore/![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/24889b65f404d04625439a0b7ca89049.png)
- 第三步:(关键)安装各种环境,执行操作:./scripts/setup/setup_centos.sh
- 第四步:准备依赖库,执行命令:make pre
- 第五步:编译系统代码,执行:make,如果正确最后出现 Compilation ends successfully!结果
- 第五步:bin/ginit (初始化,如果正确最后出现 system.db is built successfully!结果) ![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/54d9672e3c98c4aa196f359c3c625b32.png)
- 四、gStoreWorkBench安装使用
一、系统要求
二、安装环境准备
在这里本人实验的是centos7 的阿里云服务器
官网安装指南:有挺多的坑后面也会说
根据您的操作系统运行 scripts/setup/ 中相应的脚本能够自动为您解决大部分问题。比如,若您是 Ubuntu 用户,可执行以下指令:
$ . scripts/setup/setup_ubuntu.sh
**在运行脚本之前,**建议先安装 5.0 以上版本的 gcc 和 g++ 。
2.1 安装gcc 和 g++ 安装
2.1.1官网指导
检查 g++ 版本:
$ g++ --version
若版本低于 5.0, 则重新安装 5.0 以上版本。以安装 5.4.0 为例:(适用于 Ubuntu 和 CentOS )
$ wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-5.4.0/gcc-5.4.0.tar.gz
$ tar xvf gcc-5.4.0.tar.gz
$ cd gcc-5.4.0
$ ./contrib/download_prerequisites
$ cd ..
$ mkdir gcc-build-5.4.0
$ cd gcc-build-5.4.0
$ ../gcc-5.4.0/configure --prefix=/opt/gcc-5.4.0 --enable-checking=release --enable-languages=c,c++ --disable-multilib
$ sudo make -j4 #允许4个编译命令同时执行,加速编译过程
$ sudo make install
第一坑:首先是wget的速度特别的慢;第二:就是我也不知道是不是我自己的问题未能安装成功 ;第三就是4个编译命令我的服务器卡的不动了,最后莫名报了2个error,也没有安装成功
Ubuntu 也可直接使用以下命令安装:
$ apt install -y gcc-5 g++-5
安装成功后,
- **需要修改 gcc 和 g++ 的默认版本:**假设 5.0 以上版本的 gcc 和 g++ 安装在了/prefix/bin路径下,则需要执行以下命令:
$ export PATH=/prefix:$PATH
- **需要修改动态链接库路径:**假设 5.0 以上版本的 gcc 和 g++ 动态链接库在/prefix/lib路径下,则需要执行以下命令:
$ export LD_LIBRARY_PATH=/prefix/lib:$LD_LIBRARY_PATH
第二坑:我不知道通过上面步骤安装的路径,和动态的链接库路径
2.1.2 笔者方法
第一步:安装centos-release-scl
sudo yum install centos-release-scl
第二步:安装devtoolset,注意,如果想安装7.版本的,就改成devtoolset-7-gcc,以此类推
sudo yum install devtoolset-7-gcc*
笔者这里是7 ;8不知道为啥后面的gStore没有通过
第三步:激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本
scl enable devtoolset-7 bash
第四步:查看一下gcc版本
gcc -v
补充:这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换可按如下操作。
首先,默认安装的devtoolset是在 /opt/rh 目录下的,如图
每个版本的目录下面都有个 enable 文件,如果需要启用某个版本,只需要执行
source ./enable
所以要想切换到某个版本,只需要执行
source /opt/rh/devtoolset-8/enable
可以将对应版本的切换命令写个shell文件放在配了环境变量的目录下,需要时随时切换,或者开机自启
第五步:直接替换旧的gcc
旧的gcc是运行的 /usr/bin/gcc,所以将该目录下的gcc/g++替换为刚安装的新版本gcc软连接,免得每次enable
mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++
gcc --version
g++ --version
2.2 jdk 安装
这个centos7自带了,笔者也没有试
判断 jdk 是否安装
$ java -version
如果没有安装,则安装
$ sudo yum install java-1.8.0-openjdk-devel.x86_64 #centos系统
$ sudo apt install -y openjdk-8-jdk
2.3 readline 安装
判断 readline 是否安装
$ yum list installed | grep readline #centos系统
$ dpkg -s readline #ubuntu系统
如果没有安装,则安装
$ sudo yum install readline-devel #centos系统
$ sudo apt install -y libreadline-dev #ubuntu系统
2.4 boost 安装(请使用1.56-1.59)
亲测:没有也可以
判断 boost 是否安装
$ yum list installed | grep boost #centos系统
$ dpkg -s boost #ubuntu系统
如果没有安装,则安装:(以版本 1.56.0 为例)
版本:1.56.0
地址:http://sourceforge.net/projects/boost/files/boost/1.56.0/boost_1_56_0.tar.gz
安装脚本: (适用于 CentOS 和 Ubuntu)
$ wget http://sourceforge.net/projects/boost/files/boost/1.56.0/boost_1_56_0.tar.gz
$ tar -xzvf boost_1_56_0.tar.gz
$ cd boost_1_56_0
$ ./bootstrap.sh
$ sudo ./b2
$ sudo ./b2 install
Ubuntu 也可直接使用以下命令安装:
$ sudo apt install -y libboost-all-dev
**注意:请在确保 g++ 版本高于 5.0 后安装 boost 。**若在编译 gStore 时遇到与 boost 链接错误(形如 “undefined reference to boost::…”),很可能是因为您使用低于 5.0 的 gcc 版本编译 boost 。此时,请使用以下步骤重新编译 boost :
- 清除旧文件:./b2 --clean-all
- 在 ./tools/build/src 下的 user-config.jam 文件中(若此路径下不存在此文件,请在 ./tools/build/example 或其他路径下找到一个示例 user-config.jam 文件并拷贝到 ./tools/build/src 下)添加:using gcc : 5.4.0 : gcc-5.4.0的路径 ;
- 在 ./ 下运行
./bootstrap.sh --with-toolset=gcc
sudo ./b2 install --with-toolset=gcc
- 然后重新编译 gStore (请从 make pre 开始重做)
**需要修改动态链接库路径:**假设 boost 的动态链接库在/prefix/lib路径下,则需要执行以下命令:
$ export LD_LIBRARY_PATH=/prefix/lib:$LD_LIBRARY_PATH
**需要修改头文件路径:**假设 boost 的头文件在/prefix/include路径下,则需要执行以下命令:
$ export CPATH=/prefix/include:$CPATH
2.5 curl 安装
判断 curl 是否安装
$ curl --version #centos系统
$ curl --version #ubuntu系统
如果没有安装,则安装:
版本:7.55.1
地址:https://curl.haxx.se/download/curl-7.55.1.tar.gz
安装脚本(适用于 CentOS 和 Ubuntu)
$ wget https://curl.haxx.se/download/curl-7.55.1.tar.gz
$ tar -xzvf curl-7.55.1.tar.gz
$ cd curl-7.55.1
$ ./configure
$ make
$ make install
或者直接用下面命令安装
$ sudo yum install -y libcurl-devel libcurl-dev #centos系统
$ sudo apt install -y curl libcurl4 libcurl4-openssl-dev #ubuntu系统
2.6 cmake 安装
判断 cmake 是否安装
$ cmake --version #centos系统
$ cmake --version #ubuntu系统
如果没有安装,则安装:
版本:3.6.2
地址:https://curl.haxx.se/download/curl-7.55.1.tar.gz
安装脚本 (适用于 CentOS 和 Ubuntu)
$ wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz
$ tar -xvf cmake-3.6.2.tar.gz && cd cmake-3.6.2/
$ ./bootstrap
$ make
$ make install
Ubuntu 也可直接使用以下命令安装:
$ sudo apt install -y cmake
2.7 pkg-config 安装
判断 pkg-config 是否安装
$ pkg-config --version #centos系统
$ pkg-config --version #ubuntu系统
如果没有安装,则安装
$ sudo yum install pkgconfig.x86_64 #centos系统
$ sudo apt install -y pkg-config #ubuntu系统
2.8 uuid 安装
没有也没关系
判断 uuid 是否安装
$ uuid -m #centos系统
$ uuid -m #ubuntu系统
如果没有安装,则安装
$ sudo yum install libuuid-devel #centos系统
$ sudo apt install -y uuid-dev #ubuntu系统
2.9 zip/unzip安装
用于解压 gStore zip 包。
判断 zip/unzip 是否安装
$ yum list installed | grep unzip #centos系统
$ dpkg -s unzip #ubuntu系统
如果没有安装,则安装
$ sudo yum install -y unzip zip #centos系统
$ sudo apt-get install unzip zip #ubuntu系统
三、安装 gStore
3.1 获取gStore
gStore获取
如果遇到权限问题,请在命令前加 sudo 。
3.1.1 方式一:download
https://github.com/pkumod/gStore
https://gitee.com/PKUMOD/gStore
下载gStore.zip;解压zip包。
3.1.2 方式二:clone(推荐)
通过如下命令 clone :
$ git clone https://github.com/pkumod/gStore.git #github
$ git clone https://gitee.com/PKUMOD/gStore.git #gitee(码云) 国内下载速度更快
注意:这一方法需要先安装 Git 。
$ sudo yum install git #centos系统
$ sudo apt-get install git #ubuntu系统
3.2 gStore编译
第一步:gStore的github主页地址:https://github.com/pkumod/gStore,使用clone方式
通过命令:git clone https://github.com/pkumod/gStore.git
第二步:进入gStore目录下,通过命令:cd gStore/![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/24889b65f404d04625439a0b7ca89049.png)
第三步:(关键)安装各种环境,执行操作:./scripts/setup/setup_centos.sh
这一步特别关键。官网没有这一步,让笔者走了很多的弯路
第四步:准备依赖库,执行命令:make pre
第五步:编译系统代码,执行:make,如果正确最后出现 Compilation ends successfully!结果
第五步:bin/ginit (初始化,如果正确最后出现 system.db is built successfully!结果) ![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/54d9672e3c98c4aa196f359c3c625b32.png)
最后显示,安装成功!
四、gStoreWorkBench安装使用
官网依旧有坑
https://blog.csdn.net/huiguo_/article/details/121317776