ARM下源碼編譯etcd

ARM下源碼編譯etcd

etcd由go語言編寫,編譯結果是一個二進制的可執行文件,因此不能跨平臺。網絡上沒有找到ARM直接可用的etcd可執行程序(其實有,只是要積分才能下)。所以考慮在ARM平臺下直接源碼編譯出etcd,需要提前準備ARM下的Go環境。可以直接在go的官網下載arm版本的壓縮包,解壓即可用。

一、 下載etcd源碼

# 可根據自己的需求將3.2.0更換對應版本
wget https://github.com/coreos/etcd/archive/v3.2.0.tar.gz

二、解壓編譯

tar -zxvf  etcd-3.2.0.tar.gz
cd etcd-3.2.0
./build

完成後會在bin目錄下生成 etcdetcdctl 的可執行文件

三、運行測試

出現報錯看第四步

cd bin
./etcd -version 
# etcd Version: 3.2.0
# Git SHA: GitNotFound
# Go Version: go1.11.10
# Go OS/Arch: linux/arm64
./etcdctl -v
# etcdctl version: 3.2.0
# API version: 2

四、報錯處理

很多情況下,直接執行etcd或者查看版本測試會出現如下錯誤:

2019-06-12 18:17:17.641595 E | etcdmain: etcd on unsupported platform without ETCD_UNSUPPORTED_ARCH=arm64 set.

其實提示很清楚,需要添加對應的環境變量即可:

export  ETCD_UNSUPPORTED_ARCH=arm64 

完後再執行etcd程序查看效果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章