golang環境 centos 7


https://blog.csdn.net/ggq89/article/details/82682171  Linux下Go的安裝、配置 、升級和卸載

 

https://blog.csdn.net/weixin_37696997/article/details/78525639    centos安裝golang、protobuf

 

https://www.cnblogs.com/mrblue/p/8891789.html   CentOS7安裝Go環境

 

https://www.cnblogs.com/pyyu/p/8032257.html   Go語言之講解GOROOT、GOPATH、GOBIN

  GOROOT為你的Go安裝跟目錄

  GOPATH為你go程序開發目錄,go get后的包也會下載到該目錄。

  GOBIN為你的go運行目錄,運行 go install 命令后,程序會被安裝到該目錄。

  PATH為你Go程序根目錄,用於能夠通過控制台調用go命令。

 

https://hk.saowen.com/a/0974f14ebeaacefc2d4ea7193121f6faf8304388acc206e1781d42781d3883af    golang 使用 protobuf 的教程

 

https://blog.csdn.net/panshiqu/article/details/53788067        Golang 在 Mac、Linux、Windows 下如何交叉編譯

 1 Golang 支持交叉編譯,在一個平台上生成另一個平台的可執行程序,最近使用了一下,非常好用,這里備忘一下。
 2 
 3 Mac 下編譯 Linux 和 Windows 64位可執行程序
 4 
 5 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
 6 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go12
 7 
 8 Linux 下編譯 Mac 和 Windows 64位可執行程序
 9 
10 
11 
12 CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go
13 CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go12
14 
15 Windows 下編譯 Mac 和 Linux 64位可執行程序
16 
17 
18 
19 SET CGO_ENABLED=0
20 SET GOOS=darwin
21 SET GOARCH=amd64
22 go build main.go
23 
24 SET CGO_ENABLED=0
25 SET GOOS=linux
26 SET GOARCH=amd64
27 go build main.go123456789
28 
29 GOOS:目標平台的操作系統(darwin、freebsd、linux、windows) 
30 GOARCH:目標平台的體系架構(386、amd64、arm) 
31 交叉編譯不支持 CGO 所以要禁用它
32 
33 上面的命令編譯 64 位可執行程序,你當然應該也會使用 386 編譯 32 位可執行程序 
34 很多博客都提到要先增加對其它平台的支持,但是我跳過那一步,上面所列的命令也都能成功,且得到我想要的結果,可見那一步應該是非必須的,或是我所使用的 Go 版本已默認支持所有平台。
35 
36 ---------------------
37 
38 本文來自 磐石區 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/panshiqu/article/details/53788067?utm_source=copy 

 

 1 說明: 
 2 protobuf已經全面遷移到github,地址:https://github.com/google/protobuf 
 3 直接下載2.6.1版本:https://github.com/google/protobuf/archive/v2.6.1.zip
 4 
 5 轉linux不久對linux的各種路徑變量不是特別熟悉,網上看了幾個教程都沒有提到添加 LIBRARY_PATH路徑,導致自定義安裝路徑的時候鏈接失敗,自己寫一篇安裝教程,也算作加深印象吧,希望對大家有所幫助。
 6 
 7 
 8 
 9 默認安裝:
10 
11 
12 
13 $wget https://github.com/google/protobuf/archive/v2.6.1.zip
14 $unzip protobuf-2.6.1.zip
15 $cd protobuf-2.6.1123
16 
17 下載自github的代碼需要首先執行 $ ./autogen.sh 生成configure文件 
18 注意autogen.sh 需要gtest包,默認是從 googletest.googlecode.com下載,國內需要翻牆才能訪問,很多人問autogen.sh運行失敗,這里我補充一下 
19 修改一下autogen.sh  
20 將這段:
21 
22 
23 
24  echo "Google Test not present.  Fetching gtest-1.5.0 from the web..."
25  curl http://googletest.googlecode.com/files/gtest-1.5.0.tar.bz2 | tar jx
26  mv gtest-1.5.0 gtest123
27 
28 修改為:
29 
30 
31 
32 wget https://github.com/google/googletest/archive/release-1.5.0.tar.gz
33 tar xzvf release-1.5.0.tar.gz
34 mv googletest-release-1.5.0 gtest123
35 
36 再執行 autogen.sh,這樣就不會報錯了
37 
38 
39 
40 $ ./configure
41 $ make
42 $ make check
43 $ make install
44 
45 我使用的是centos系統
46 /usr/local/bin
47 /usr/local/lib,
48 /usr/local/include 
49 是也系統默認路徑之一,所以到這一步就可以使用protobuf了
50 $ protoc -I=./ --cpp_out=./ test.proto
51 到你的test.proto文件所在目錄使用命令protoc -I=./ --cpp_out=./ 生成C++版本的協議文件
52 一切OK的話,你回在當前目錄看到.h和.cc文件12345678910111213
53 
54 
55 
56 自定義安裝路徑:
60 protobuf默認安裝在 /usr/local 目錄
61 你可以修改安裝目錄通過 ./configure --prefix=命令
62 雖然我是root用戶但覺得默認安裝過於分散,所以統一安裝在/usr/local/protobuf下
63 
64 $./configure --prefix=/usr/local/protobuf
65 $ make
66 $ make check
67 $ make install
68 
69 到此步還沒有安裝完畢,在/etc/profile 或者用戶目錄 ~/.bash_profile
70 添加下面內容
71 ####### add protobuf lib path ########
72 #(動態庫搜索路徑) 程序加載運行期間查找動態鏈接庫時指定除了系統默認路徑之外的其他路徑
73 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib/
74 #(靜態庫搜索路徑) 程序編譯期間查找動態鏈接庫時指定查找共享庫的路徑
75 export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/protobuf/lib/
76 #執行程序搜索路徑
77 export PATH=$PATH:/usr/local/protobuf/bin/
78 #c程序頭文件搜索路徑
79 export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/protobuf/include/
80 #c++程序頭文件搜索路徑
81 export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/protobuf/include/
82 #pkg-config 路徑
83 export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/
84 ######################################
85 
86 好了,goog luck123456789101112131415161718192021222324252627
87 
88 編譯如果出現找不到符號和鏈接錯誤請記得加上鏈接選項  -lprotobuf 
89 並確認你的靜態庫路徑是否生效
90 
91 $ echo $LIBRARY_PATH
92 
93 ---------------------
94 
95 本文來自 jackytse_ 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/xiexievv/article/details/47396725?utm_source=copy 

https://hk.saowen.com/a/0974f14ebeaacefc2d4ea7193121f6faf8304388acc206e1781d42781d3883af      golang 使用 protobuf 的教程

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM