記錄自己在linux上搭建go環境的經歷。(因為各種版本,linux系統問題掙扎了幾天)
?
- 安裝vmware-tools,把我要運行代碼拷進來。這個網上方法很多,我的電腦抽風不能安裝,后面重裝的虛擬機
- 確定Ubuntu版本、位數。很重要,go要與Ubuntu位數一致。
內核版本發行版本命令:cat /etc/issue
Ubuntu位數:sudo uname --m
我開始使用的32位Ubuntu,所以go也下載的這個版本,結果bug了。
?
go代碼里面使用Add64數據結構程序不通過,不確定是不是系統的原因。但后面換成64位的系統就沒問題了。
3. 安裝go,直接從官網下載64位:https://golang.google.cn/dl/。
解壓:在下載目錄下打開終端,解壓到/usr/local
sudo tar zxvf go1.10.linux-amd64.tar.gz -C /usr/local
4. 配置go環境:我的目錄是/home/liangzhiyuan/go_program/{src,bin,pkg}
vim ~/.bashrc
編輯該文件,選擇“i”添加至末尾:
?
export GOROOT=/usr/local/go
export GOPATH=/home/liangzhiyuan/go_program
export GOBIN=/home/liangzhiyuan/go_program/bin
export PATH=$PATH:$GOPATH:/usr/local/go/bin
添加完成,選擇“ESC”,保存退出“:wq”
5. 運行我的代碼cmty.go,會提示有包不存在
?
使用 go get gonum.org/v1/gonum/graph需要的包
?
安裝git
?
權限不夠,因為home/liangzhiyuan/下的文件夾只能以root權限創建目錄,則修改當前用戶的權限。參考https://zhidao.baidu.com/question/1544615718761627747.html。
以root用戶下的chown命令改變/home/laingzhiyuan文件夾的屬性。
Chown –R liangzhiyuan:users /home/liangzhiyuan
之后,使用用戶liangzhiyuan權限就可以在/home/liangzhiyuan文件夾下創建目錄了。
?
缺少包golang.ora/x/exp/rand,不能直接go get。
在網上查的方法,具體參考的鏈接不記得了。
?
6. 最后的最后,運行成功了。
其實整個過程真的不復雜,就是Ubuntu不能聯網、不能粘貼復制、不能重新安裝鏡像、權限不通過、版本不允許等問題讓人很無奈,很費時費心力,換主機、換系統、換平臺很多方法都試過了。想對遇到虛擬機問題的朋友說,堅持嘗試吧,付出總會有收獲。