操作系統(tǒng):ubuntu18.04
1.增加dns服務(wù)器
sudo chmod 666 /etc/resolv.conf
vi /etc/resolv.conf
增加如下內(nèi)容:
nameserver 114.114.114.114
search openstacklocal bigdata.com
然后
source /etc/resolv.conf
2.安裝編譯必須包
sudo apt install libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev libzstd-dev libgflags-dev git
sudo apt install build-essential autoconf gcc g++ ccache libncurses5-dev byacc
安裝binutils
wget https://so.csdn.net/so/search?q=wget) http://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.gz
tar -zxvf binutils-2.35.tar.gz
cd binutils-2.35
./configure
make && make install
安裝完
3.安裝cmake
sudo apt-get install cmake
4.下載并安裝go開發(fā)包
wget https://dl.google.com/go/go1.14.linux-amd64.tar.gz
sudo tar -C /usr/local -xvf go1.14.linux-amd64.tar.gz
5.安裝npm态兴、yarn.js和yacc (npm,node,yarn需要軟鏈接)
wget https://npm.taobao.org/mirrors/node/v10.17.0/node-v10.17.0-linux-x64.tar.gz
tar -xzvf node-v10.17.0-linux-x64.tar.gz
sudo mv node-v10.17.0-linux-x64 /usr/local/node
ln -s /usr/local/node/bin/npm /usr/local/bin/
ln -s /usr/local/node/bin/node /usr/local/bin/
注:使用node -v檢查node安裝情況驯镊,應(yīng)該提示10.17.0
6.修改系統(tǒng)環(huán)境變量
vi /etc/profile
在末尾加入
export NODE_HOME=/usr/local/node
export GOPATH=/home/username/newsql/gowork/
export PATH=$NODE_HOME/bin:$PATH:/usr/local/go/bin
6.安裝yarn.js
Sudo npm install -g yarn
如果連接超時(shí)苦蒿,可以設(shè)置npm為淘寶源:
npm config set registry https://registry.npm.taobao.org
先試一下yarn
yarn --version
若是command not found凛篙,則可能是上面路徑添加失敗饲梭,輸入:
export PATH=/usr/local/node/bin/:$PATH
臨時(shí)加上路徑(關(guān)掉終端失效),再次嘗試yarn --version
注:znbase編譯時(shí)報(bào)錯(cuò)yarn not found腹备,解決辦法如上
7.驗(yàn)證程序安裝是否正確
cmake --version
go version
echo $GOPATH
npm -v
yarn --version
8.下載源碼
mkdir -p $GOPATH/src/github.com/znbasedb
cd $GOPATH/src/github.com/znbasedb
git clone http://git.inspur.com/newsql/ZNBase-OpenSourceEnabling/znbase.git
Username for 'http://git.inspur.com': WX0LZX
Password for 'http://WX0LZX@git.inspur.com': xidianLZX01
git
cd znbase
查看分支
git branch -a
切換到要編譯的分支
git checkout release-2.4.0
9.編譯
cd $GOPATH/src/github.com/znbasedb/znbase
make build
編譯成功
報(bào)錯(cuò)
1.yarn not found
是node的PATH沒設(shè)置谭贪,上面有解決方案
2.Makefile:1661: recipe for target 'bin/optgen' failed
類似的錯(cuò)誤是因?yàn)槲募窂經(jīng)]建立對(duì),最后編譯的路徑為
/home/(usename)/newsql/gowork/src/github.com/znbasedb/znbase
不能缺少github.com