1. 程式人生 > >Mac OS X下go的安裝,使用,刪除

Mac OS X下go的安裝,使用,刪除

一個 run 不同的 編輯器 http system 說明 cbo 就是

下載和安裝

  • 下載
    - 在官網下載安裝包然後安裝
  • 安裝
    • 一路默認安裝即可
    • 然後在終端運行go version,如果顯示類似下面的信息,表明安裝成功
      go version go1.10.1 darwin/amd64
    • 如果沒有出現上面的信息或者出現了其他的報錯信息,請自行查詢解決

GOROOT和GOPATH和bin的設置

  • 創建一個工作空間,比如 $HOME/go. (如果你想在一個不同的目錄下創建工作空間,那你需要設置一下GOPATH 環境變量和bin環境變量)

    • 設置 GOPATH 環境變量

      • 編輯你的 ~/.bash_profile(在終端中運行 vi ~/.bash_profile即可) 來添加下面這行代碼(如果你找不到 .bash_profile,那自己創建一個就可以了)
      export GOPATH=$HOME/go
      
      • 保存然後退出你的編輯器。然後在終端中運行下面命令
      source ~/.bash_profile
      
      • 在go官方文檔中,是這樣設置go的二進制文件目錄路徑的

        • 註意,設置GOBIN路徑以便當運行 go install時產生二進制文件
        export GOBIN=$HOME/go/bin
        
        • 而在其他網上說明文檔中,直接設置path
        export PATH=$HOME/go/bin
        
      • 我的 bash_profile 文件中是這樣的

      export GOPATH=$HOME/go
      export PATH=$HOME/go/bin:$PATH
      
      • 如果你是在mac os x 下直接通過安裝包安裝的,那麽不用設置 bin 也可以,因為通過安裝包安裝時(除非你的工作空間不在$HOME/go而在其他你偏好的文件目錄下,這個時候是需要設置bin目錄的),已經在 /etc/paths.d/go下指定了 bin 的目錄
      $ cd /etc/paths.d
      $ ls
      go
      $ cat go
      /usr/local/go/bin
      
      
  • GOROOT 默認是在 /usr/local/go,如果沒有,可以在 bash_profile 文件中設置

    export GOROOT=/usr/local/go
    

    然後退出編輯器,然後運行source ~/.bash_profile

    命令即可

第一個go程序

  • 進入到工作空間中(我的是$HOME/go, 所以使用cd $HOME/go命令直接進入)
  • 然後創建一個目錄 src/hello( mkdir src/hello),
  • 然後進入到該目錄中(cd src/hello),
  • 然後使用vi hello.go或者其他方式創建一個 hello.go文件,
  • 然後打開該文件進行編輯
package main

import "fmt"

func main() {
    fmt.Printf("hello, world\n")
}
  • 保存後退出
  • 然後在該hello.go文件目錄下運行 go build, 這個命令會創建一個命名為 hello 的可執行的文件,
  • 如果執行命令 ls,你會看到這個可執行文件就在hello.go的旁邊
$ go build hello.go
$ ls
hello    hello.go
  • 然後執行命令 ./hello
$ ./hello
hello, world!

如果看到 hello, world, 說明程序正確運行,否則有錯

  • 可以運行 go install hello將二進制文件安裝到工作空間 ($HOME/go) 的bin目錄中,或者 go clean hello 將該二進制文件刪掉
  • 運行 go install hello命令之後,運行ls $GOPATH/bin,可以看到此時hello已經在 bin 目錄中, 這個時候,你在系統的任何目錄下運行 hello命令,都會打印出hello, world
$ pwd
$HOME/go/src/hello
$ go install hello
$ ls $HOME/bin
hello
$ cd /Users/
$ hello
hello, world!

刪除 go

  • 當你需要刪除 go
    • 刪除 /usr/local目錄下的 go
    • 刪除 PATH 環境變量中的 bin
      • 在/etc/profile 或者 $HOME/.profile 或者 $HOME/.bahs_profile中刪除bin的設置
      • 如果是通過 mac os x 的安裝包安裝的,那麽應該刪除 /etc/paths.d/go 文件

go 命令詳解

  • go run: 運行go 源碼程序
  • go build: 編譯go 源碼
  • go install: go源碼編譯並打包到 $GOPATH/bin 目錄下

延伸點

mac下的環境變量設置

  • 添加 /usr/local/go/binPATH環境變量,可以通過添加下面這行到到 /etc/profile(for a system-wide installation) 或者$HOME/.profile
    export PATH=$PATH:/usr/local/go/bin

    • 如果 profile 文件在/etc/profile中,表明是全系統範圍內安裝的,我的就是在 /etc/profile

    • MacOS加載bash shell環境變量的加載順序

      • mac 一般使用bash作為默認shell,mac系統的環境變量,加載順序如下
        • 系統級別的
          • /etc/profile
            • 登錄的時候讀入,默認的設定文件
            • 這個文件為系統的每個用戶設置環境變量,當用戶第一次登陸時,該文件被執行,並從 /etc/profile.d 目錄的配置文件中收集 shell 的設置
            • 修改方法
              • 如果沒有特殊說明,設置PATH的語法都為
              export PATH=$PATH:<PATH 1>:<PATH 2>...<PATH N>
              
              • 有多個路徑時,每個路徑之間使用冒號隔開
          • /etc/bashrc
            • 這個是bash啟動時候必須加載的環境變量,作為全局環境變量設置是可行的
            • 每一個運行 bash shell 的用戶執行此文件,當 bash shell被打開時,該文件被讀取
            • 修改方法同上
          • /etc/paths
            • 這個是個系統全局的路徑,不建議做直接改動
            • 修改方法
              • 加載路徑
              1.創建一個文件
              sudo touch /etc/paths.d/mysql
              2.用vim打開這個文件(如果是以 open -t方式打開,則不允許編輯)
              sudo vim /etc/path.d/mysql
              3.編輯該文件,鍵入並保存(關閉該terminal窗口並重新打開一個,就鞥使用MySQL命令了)
              /usr.local/mysql/bin
              
              • 或者像下面
              sudo -s ‘echo "/usr/local/sbin/mypath" > /etc/paths.d/mysql‘
              
        • 用戶級別的
          • /.bash_profile (mac用的)
            • 登錄之後在 /etc/profile 載入之後載入,十分重要的配置文件
          • /.bash_login
            • 登錄之後,如果 ~/.bash_profile不存在的話,載入這個文件
          • /.profile
            • 登錄之後,如果 ~/.bash_login不存在的話,才載入這個文件
          • /.bashrc (linux 用的)
            • bash shell打開的時候載入
      • 在你的 $HOME 下面有.bash_profile或者.bash_login的時候,會忽略調 .profile
      • 系統級別,用戶級別的只要在其中選一個修改就夠了
    • 延伸閱讀

      • Mac 啟動加載文件位置
        • 首先需要知道你使用的 Mac OS X 是什麽樣的 shell,使用命令 echo $SHELL
          • 如果輸出的 csh 或者 tcsh,那麽使用的 c shell
          • 如果輸出的是 bash,sh, zsh,那麽使用的 Bourne Shell的一個變種
          • mac os x 10.2 之前默認使用的是 c shell
          • mac os x 10.3 之後使用的是 Borune shell
        • 如果使用的是 borune shell
          • 將你要添加的環境變量添加到你主目錄下的.profile或者 .bash_profile, 如果 profile 或者 bash_profile 存在,那麽直接將環境變量添加進入即可,如果 profile 或者 bash_profile 文件不存在,沒關系,創建一個,然後把環境添加進去即可
      • Mac 配置環境變量的地方
        • /etc/profile (建議不修改這個文件)
          • 全局(公有)配置,不管是哪個用戶,登錄時都會讀取該文件
        • /etc/bashrc (一般在這個文件中添加系統級別環境變量)
          • 全局(公有)配置,bash shell 執行時,不管是何種方式,都會讀取此文件
        • ~/.bash_profile (一般在這個文件中添加用戶級別環境變量)
          • 每個用戶都可以使用該文件輸入專用於自己使用的shell信息,當用戶登錄時,該文件僅僅被執行一次

其他延伸點

  • mac下運行 $HOME的結果如下
yangdeMacBook-Pro-2:~ yangtao$ $HOME
-bash: /Users/yangtao: is a directory
yangdeMacBook-Pro-2:~ yangtao$ 

所以 $HOME 的值是 /Users/yangtao,是當前登錄用戶的主目錄

Mac OS X下go的安裝,使用,刪除