当前位置:   article > 正文

Gstore官网学习二:安装(笔者自带填坑)_gstore编译

gstore编译

一、系统要求

在这里插入图片描述

二、安装环境准备

在这里本人实验的是centos7 的阿里云服务器
官网安装指南:有挺多的坑后面也会说

根据您的操作系统运行 scripts/setup/ 中相应的脚本能够自动为您解决大部分问题。比如,若您是 Ubuntu 用户,可执行以下指令:

$ . scripts/setup/setup_ubuntu.sh
**在运行脚本之前,**建议先安装 5.0 以上版本的 gcc 和 g++ 。

  • 1
  • 2
  • 3
  • 4
  • 5

2.1 安装gcc 和 g++ 安装

2.1.1官网指导

检查 g++ 版本:

$ g++ --version
  • 1

若版本低于 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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

第一坑:首先是wget的速度特别的慢;第二:就是我也不知道是不是我自己的问题未能安装成功 ;第三就是4个编译命令我的服务器卡的不动了,最后莫名报了2个error,也没有安装成功
Ubuntu 也可直接使用以下命令安装:

$ apt install -y gcc-5 g++-5
  • 1

安装成功后,

  • **需要修改 gcc 和 g++ 的默认版本:**假设 5.0 以上版本的 gcc 和 g++ 安装在了/prefix/bin路径下,则需要执行以下命令:
$ export PATH=/prefix:$PATH
  • 1
  • **需要修改动态链接库路径:**假设 5.0 以上版本的 gcc 和 g++ 动态链接库在/prefix/lib路径下,则需要执行以下命令:
$ export LD_LIBRARY_PATH=/prefix/lib:$LD_LIBRARY_PATH
  • 1

第二坑:我不知道通过上面步骤安装的路径,和动态的链接库路径

2.1.2 笔者方法

第一步:安装centos-release-scl
sudo yum install centos-release-scl
  • 1
第二步:安装devtoolset,注意,如果想安装7.版本的,就改成devtoolset-7-gcc,以此类推
sudo yum install devtoolset-7-gcc*
  • 1

笔者这里是7 ;8不知道为啥后面的gStore没有通过

第三步:激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本
scl enable devtoolset-7 bash
  • 1
第四步:查看一下gcc版本
gcc -v
  • 1

补充:这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换可按如下操作。

首先,默认安装的devtoolset是在 /opt/rh 目录下的,如图
在这里插入图片描述
每个版本的目录下面都有个 enable 文件,如果需要启用某个版本,只需要执行


source ./enable

  • 1
  • 2
  • 3

所以要想切换到某个版本,只需要执行


source /opt/rh/devtoolset-8/enable

  • 1
  • 2
  • 3

可以将对应版本的切换命令写个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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

2.2 jdk 安装

这个centos7自带了,笔者也没有试
判断 jdk 是否安装

$ java -version
  • 1

如果没有安装,则安装

$ sudo yum install java-1.8.0-openjdk-devel.x86_64      #centos系统
$ sudo apt install -y openjdk-8-jdk  
  • 1
  • 2

2.3 readline 安装

判断 readline 是否安装

$ yum list installed | grep readline	#centos系统
$ dpkg -s readline						#ubuntu系统
  • 1
  • 2

如果没有安装,则安装

$ sudo yum install readline-devel		#centos系统
$ sudo apt install -y libreadline-dev	#ubuntu系统
  • 1
  • 2

2.4 boost 安装(请使用1.56-1.59)

亲测:没有也可以
判断 boost 是否安装

$ yum list installed | grep boost	    #centos系统
$ dpkg -s boost					        #ubuntu系统
  • 1
  • 2

如果没有安装,则安装:(以版本 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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Ubuntu 也可直接使用以下命令安装:

$ sudo apt install -y libboost-all-dev
  • 1

**注意:请在确保 g++ 版本高于 5.0 后安装 boost 。**若在编译 gStore 时遇到与 boost 链接错误(形如 “undefined reference to boost::…”),很可能是因为您使用低于 5.0 的 gcc 版本编译 boost 。此时,请使用以下步骤重新编译 boost :

  1. 清除旧文件:./b2 --clean-all
  2. 在 ./tools/build/src 下的 user-config.jam 文件中(若此路径下不存在此文件,请在 ./tools/build/example 或其他路径下找到一个示例 user-config.jam 文件并拷贝到 ./tools/build/src 下)添加:using gcc : 5.4.0 : gcc-5.4.0的路径 ;
  3. 在 ./ 下运行
 ./bootstrap.sh --with-toolset=gcc 
sudo ./b2 install --with-toolset=gcc
  • 1
  • 2
  1. 然后重新编译 gStore (请从 make pre 开始重做)

**需要修改动态链接库路径:**假设 boost 的动态链接库在/prefix/lib路径下,则需要执行以下命令:

$ export LD_LIBRARY_PATH=/prefix/lib:$LD_LIBRARY_PATH
  • 1

**需要修改头文件路径:**假设 boost 的头文件在/prefix/include路径下,则需要执行以下命令:

$ export CPATH=/prefix/include:$CPATH
  • 1

2.5 curl 安装

判断 curl 是否安装

$ curl --version		    #centos系统
$ curl --version		    #ubuntu系统
  • 1
  • 2

如果没有安装,则安装:

版本:7.55.1

地址:https://curl.haxx.se/download/curl-7.55.1.tar.gz
  • 1

安装脚本(适用于 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  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

或者直接用下面命令安装

$ sudo yum install -y libcurl-devel	libcurl-dev					    #centos系统
$ sudo apt install -y curl libcurl4 libcurl4-openssl-dev	#ubuntu系统

  • 1
  • 2
  • 3

2.6 cmake 安装

判断 cmake 是否安装

$ cmake --version				#centos系统
$ cmake --version				#ubuntu系统
  • 1
  • 2

如果没有安装,则安装:

版本:3.6.2

地址:https://curl.haxx.se/download/curl-7.55.1.tar.gz
  • 1

安装脚本 (适用于 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  
  • 1
  • 2
  • 3
  • 4
  • 5

Ubuntu 也可直接使用以下命令安装:

$ sudo apt install -y cmake
  • 1

2.7 pkg-config 安装

判断 pkg-config 是否安装

$ pkg-config --version		#centos系统
$ pkg-config --version		#ubuntu系统
  • 1
  • 2

如果没有安装,则安装

$ sudo yum install pkgconfig.x86_64         #centos系统
$ sudo apt install -y pkg-config            #ubuntu系统
  • 1
  • 2

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 
  • 1
 https://gitee.com/PKUMOD/gStore
  • 1

下载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系统
  • 1
  • 2

3.2 gStore编译

第一步:gStore的github主页地址:https://github.com/pkumod/gStore,使用clone方式

通过命令:git clone https://github.com/pkumod/gStore.git
在这里插入图片描述

第二步:进入gStore目录下,通过命令:cd gStore/在这里插入图片描述

第三步:(关键)安装各种环境,执行操作:./scripts/setup/setup_centos.sh

这一步特别关键。官网没有这一步,让笔者走了很多的弯路
在这里插入图片描述

第四步:准备依赖库,执行命令:make pre

在这里插入图片描述

第五步:编译系统代码,执行:make,如果正确最后出现 Compilation ends successfully!结果

在这里插入图片描述

第五步:bin/ginit (初始化,如果正确最后出现 system.db is built successfully!结果) 在这里插入图片描述

最后显示,安装成功!

在这里插入图片描述

四、gStoreWorkBench安装使用

图形化管理工具

官网依旧有坑

https://blog.csdn.net/huiguo_/article/details/121317776

  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/260941
推荐阅读
相关标签
  

闽ICP备14008679号