• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • Golang搭建開發環境

    標簽: 重學編程之Golang  程序人生  go

    Golang開發環境搭建

    Go 語言開發包

    國外:https://golang.org/dl/

    國內(推薦): https://golang.google.cn/dl/

    編輯器

    • Golang:https://www.jetbrains.com/go/
    • Visual Studio Code: https://code.visualstudio.com/

    搭建 Go 語言開發環境,需要先下載 Go 語言開發包。

    查看操作系統及版本

    Windows:

    Mac:

    Linux:

    終端輸入uname -a,示例如下

    Golang語言開發包

    Golang開發包

    MSI 安裝的方式比較簡單推薦使用

    Windows 系統上推薦使用這種方式。現在的操作系統基本上都是 64 位的,所以選擇 64 位的 go1.15.windows-amd64.msi 下載即可,如果操作系統是 32 位的,選擇 go1.15.windows-386.msi 進行下載。

    下載后雙擊該 MSI 安裝文件,按照提示一步步地安裝即可。在默認情況下,Go 語言開發工具包會被安裝到 c:\Go 目錄,你也可以在安裝過程中選擇自己想要安裝的目錄。

    假設安裝到 c:\Go 目錄,安裝程序會自動把 c:\Go\bin 添加到你的 PATH 環境變量中,如果沒有的話,你可以通過系統 -> 控制面板 -> 高級 -> 環境變量選項來手動添加。示例如下

    • 進入

    • 配置

    macOS 下安裝

    如果你的操作系統是 macOS,可以采用 PKG 安裝包。下載 go1.15.darwin-amd64.pkg 后,雙擊按照提示安裝即可。安裝成功后,路徑/usr/local/go/bin 應該已經被添加到了 PATH 環境變量中。

    如果沒有的話,你可以手動添加,把如下內容添加到 /etc/profile 或者 $HOME/.profile 文件保存即可。命令如下

    export PATH=$PATH:/usr/local/go/bin
    

    BrewHome安裝

    # brewHome安裝
    brew install golang
    

    Linux

    • 保護管理工具安裝
    # yum(Centos)
    sudo yum -y update # 更新yum
    sudo yum install -y golang
    # apt(ubantu)
    sudo apt -y update
    sudo apt install -y golang
    
    • 壓縮包安裝(安裝前請查看操作系統版本)
    # amd 版本
    wget https://golang.google.cn/dl/go1.15.4.linux-amd64.tar.gz
    # arm版本
    https://golang.google.cn/dl/go1.15.4.linux-arm64.tar.gz
    
    # 解壓(amd)
    sudo tar -C /usr/local/ -xzvf go1.15.4.linux-amd64.tar.gz
    # 解壓
    sudo tar -C /usr/local/ -xzvf go1.15.4.linux-arm64.tar.gz
    
    # 環境變量配置
    # sudo vim /etc/profile
     export GOROOT=/usr/local/go
     export GOPATH=/home/bruce/go
     export GOBIN=$GOPATH/bin
     export PATH=$PATH:$GOROOT/bin
     export PATH=$PATH:$GOPATH/bin
    # 環境變量生效
    source /etc/profile
    

    GOROOT設置golang開發包的安裝位置,我們解壓到了/usr/local/目錄,該目錄下的go/文件夾一定是go的環境的根目錄,就是打開go目錄后別再有一個go/目錄。

    GOBIN目錄是執行 go install 后生成可執行文件的目錄

    GOPATH是我們的工作目錄,一般我們設置到用戶目錄下,這個要根據你電腦的實際情況去配置。在介紹一下go的工作目錄結構。在我們設置的工作目錄下有3個子目錄

    測試安裝

    # 任意目錄下輸入go version
    go version go1.15.2 darwin/amd64
    # 查看環境配置
    go env
    
    
    # go env
    GO111MODULE="on"
    GOARCH="amd64"
    GOBIN=""
    GOCACHE="/Users/stringle-004/Library/Caches/go-build"
    GOENV="/Users/stringle-004/Library/Application Support/go/env"
    GOEXE=""
    GOFLAGS=""
    GOHOSTARCH="amd64"
    GOHOSTOS="darwin"
    GOINSECURE=""
    GOMODCACHE="/Users/stringle-004/go/pkg/mod"
    GONOPROXY=""
    GONOSUMDB=""
    GOOS="darwin"
    GOPATH="/Users/stringle-004/go"
    GOPRIVATE=""
    GOPROXY="https://goproxy.cn,direct"
    GOROOT="/usr/local/go"		# golang開發包的安裝位置
    GOSUMDB="sum.golang.org"
    GOTMPDIR=""
    GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
    GCCGO="gccgo"
    AR="ar"
    CC="clang"
    CXX="clang++"
    CGO_ENABLED="1"
    GOMOD="/Users/stringle-004/go/src/github.com/payne/awesomeProject/go.mod"
    CGO_CFLAGS="-g -O2"
    CGO_CPPFLAGS=""
    CGO_CXXFLAGS="-g -O2"
    CGO_FFLAGS="-g -O2"
    CGO_LDFLAGS="-g -O2"
    PKG_CONFIG="pkg-config"
    GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/sb/__n99hm13ms08lkk2lv5pxj40000gn/T/go-build659271527=/tmp/go-build -gno-record-gcc-switches -fno-common"
    

    GOPROXY

    Go1.14版本之后,都推薦使用go mod模式來管理依賴環境了,也不再強制我們把代碼必須寫在GOPATH下面的src目錄了,你可以在你電腦的任意位置編寫go代碼。(網上有些教程適用于1.11版本之前。)

    默認GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct,由于國內訪問不到https://proxy.golang.org,所以我們需要換一個PROXY,這里推薦使用https://goproxy.iohttps://goproxy.cn

    可以執行下面的命令修改GOPROXY:

    go env -w GOPROXY=https://goproxy.cn,direct
    

    跨平臺編譯

    Go 語言開發工具包的另一強大功能就是可以跨平臺編譯。什么是跨平臺編譯呢?

    就是在 macOS 開發,可以編譯 Linux、Window 等平臺上的可執行程序,這樣你開發的程序,就可以在這些平臺上運行。也就是說,你可以選擇喜歡的操作系統做開發,并跨平臺編譯成需要發布平臺的可執行程序即可。

    Go 語言通過兩個環境變量來控制跨平臺編譯,它們分別是 GOOSGOARCH

    • GOOS:代表要編譯的目標操作系統,常見的有 Linux、Windows、Darwin 等。

    • GOARCH:代表要編譯的目標處理器架構,常見的有 386、AMD64、ARM64 等。

    這樣通過組合不同的 GOOS 和 GOARCH,就可以編譯出不同的可執行程序。比如我現在的操作系統是 macOS AMD64 的,我想編譯出 Linux AMD64 的可執行程序,只需要執行 go build 命令即可,如以下代碼所示:

    關于 GOOS 和 GOARCH 更多的組合,參考官方文檔的 $GOOS and $GOARCH 這一節即可

    GOOS=linux GOARCH=amd64 go build /Users/stringle-004/go/main.go
    

    關于 GOOS 和 GOARCH 更多的組合,參考官方文檔的 $GOOS and $GOARCH 這一節即可

    Go 編輯器

    第一款是 Visual Studio Code + Go 擴展插件,可以讓你非常高效地開發,通過官方網站下載所對應操作系統版本的Visual Studio Code。

    • 安裝:略(進入官網,下載安裝即可)
    • Visual Studio Code + Go設置

    安裝中文簡體插件

    點擊左側菜單欄最后一項管理擴展,在搜索框中輸入chinese ,選中結果列表第一項,點擊install安裝。

    安裝完畢后右下角會提示重啟VS Code,重啟之后你的VS Code就顯示中文啦!

    VSCode主界面介紹:

    安裝go擴展

    現在我們要為我們的VS Code編輯器安裝Go擴展插件,讓它支持Go語言開發。

    安裝中文簡體插件

    點擊左側菜單欄最后一項管理擴展,在搜索框中輸入chinese ,選中結果列表第一項,點擊install安裝。

    安裝完畢后右下角會提示重啟VS Code,重啟之后你的VS Code就顯示中文啦!

    第二款是老牌 IDE 公司 JetBrains 推出的 Goland,所有插件已經全部集成,更容易上手,并且功能強大,新手老手都適合,你可以通過官方網站 https://www.jetbrains.com/go/ 下載使用。

    第一個Golang程序

    package main			# 可執行文件必須為package main開頭
    
    import "fmt"			# 導入“fmt”包,用于打印(fmt.Print(打印)、fmt.Println(換行打印)、fmt.Printf(格式化打印)等)
    
    func main() {			# 主函數main
    	fmt.Print("你好,我叫payne")		# 輸入
    }
    # 你好,我叫payne
    

    想了解作者、更多文章、敬請關注:積跬Coder

    版權聲明:本文為wzp7081原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/wzp7081/article/details/109801624

    智能推薦

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    猜你喜歡

    Linux C系統編程-線程互斥鎖(四)

    互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...

    統計學習方法 - 樸素貝葉斯

    引入問題:一機器在良好狀態生產合格產品幾率是 90%,在故障狀態生產合格產品幾率是 30%,機器良好的概率是 75%。若一日第一件產品是合格品,那么此日機器良好的概率是多少。 貝葉斯模型 生成模型與判別模型 判別模型,即要判斷這個東西到底是哪一類,也就是要求y,那就用給定的x去預測。 生成模型,是要生成一個模型,那就是誰根據什么生成了模型,誰就是類別y,根據的內容就是x 以上述例子,判斷一個生產出...

    styled-components —— React 中的 CSS 最佳實踐

    https://zhuanlan.zhihu.com/p/29344146 Styled-components 是目前 React 樣式方案中最受關注的一種,它既具備了 css-in-js 的模塊化與參數化優點,又完全使用CSS的書寫習慣,不會引起額外的學習成本。本文是 styled-components 作者之一 Max Stoiber 所寫,首先總結了前端組件化樣式中的最佳實踐原則,然后在此基...

    基于TCP/IP的網絡聊天室用Java來實現

    基于TCP/IP的網絡聊天室實現 開發工具:eclipse 開發環境:jdk1.8 發送端 接收端 工具類 運行截圖...

    19.vue中封裝echarts組件

    19.vue中封裝echarts組件 1.效果圖 2.echarts組件 3.使用組件 按照組件格式整理好數據格式 傳入組件 home.vue 4.接口返回數據格式...

    精品国产乱码久久久久久蜜桃不卡