真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Golang的目錄結(jié)構(gòu)以及在linux下安裝go環(huán)境-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)專注于清流企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城網(wǎng)站建設(shè)。清流網(wǎng)站建設(shè)公司,為清流等地區(qū)提供建站服務(wù)。全流程定制制作,專業(yè)設(shè)計,全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

這篇文章主要為大家分享Golang的目錄結(jié)構(gòu)中$GOPATH目錄的三個子目錄的介紹。文中還介紹了linux系統(tǒng)中安裝go環(huán)境的方法,希望大家通過這篇文章能有所收獲。

Go語言是一門全新的靜態(tài)類型開發(fā)語言,具有自動垃圾回收,豐富的內(nèi)置類型,函數(shù)多返回值,錯誤處理,匿名函數(shù),并發(fā)編程,反射等特性.

go命令依賴一個重要的環(huán)境變量:$GOPATH
GOPATH允許多個目錄,當(dāng)有多個目錄時,請注意分隔符,多個目錄的時候Windows是分號;

當(dāng)有多個GOPATH時默認(rèn)將go get獲取的包存放在第一個目錄下

$GOPATH目錄約定有三個子目錄

1、src存放源代碼(比如:.go .c .h .s等)   按照golang默認(rèn)約定,go run,go install等命令的當(dāng)前工作路徑(即在此路徑下執(zhí)行上述命令)。

2、pkg編譯時生成的中間文件(比如:.a)  golang編譯包時

3、bin編譯后生成的可執(zhí)行文件(為了方便,可以把此目錄加入到 $PATH 變量中,如果有多個gopath,那么使用${GOPATH//://bin:}/bin添加所有的bin目錄)

代碼目錄結(jié)構(gòu)規(guī)劃

GOPATH下的src目錄就是接下來開發(fā)程序的主要目錄,所有的源碼都是放在這個目錄下面,那么一般我們的做法就是一個目錄一個項(xiàng)目,

例如: $GOPATH/src/mymath 表示mymath這個應(yīng)用包或者可執(zhí)行應(yīng)用,這個根據(jù)package是main還是其他來決定,main的話就是可執(zhí)行應(yīng)用,其他的話就是應(yīng)用包,這個會在后續(xù)詳細(xì)介紹package。

首先看下我的go環(huán)境:go env

C:\Users\Administrator>go env
set GOARCH=amd64
set GOBIN=
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=D:\project
set GORACE=
set GOROOT=D:\BaiduNetdiskDownload\go
set GOTOOLDIR=D:\BaiduNetdiskDownload\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0
set CXX=g++
set CGO_ENABLED=1
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config

GOROOT

其實(shí)就是golang 的安裝路徑
當(dāng)你安裝好golang之后其實(shí)這個就已經(jīng)有了

GOBIN

首先看一下結(jié)構(gòu):

Golang的目錄結(jié)構(gòu)以及在linux下安裝go環(huán)境

我們通常是在project目錄下執(zhí)行g(shù)o build,例如:

D:\project\src\go_dev\day1\package_example\main>go run main.go
400 100

現(xiàn)在需要編譯main.go,golang 會自動去src下找hello目錄,因?yàn)槲业膍ain.go中代碼的開通導(dǎo)入了packag main包,所以可以編譯成可執(zhí)行文件,但是這樣默認(rèn)在當(dāng)前目錄下生成可執(zhí)行文件,雖然可以指定目錄,但是還是感覺不是非常方便

d:\project>go build go_dev/day1/package_example\main

所以還有兩個非常好用的命令:go get 和go install

go get

go get會做兩件事:

1、從遠(yuǎn)程下載需要用到的包

2、執(zhí)行g(shù)o install

go install

go install 會生成可執(zhí)行文件直接放到bin目錄下,當(dāng)然這是有前提的

你編譯的是可執(zhí)行文件,如果是一個普通的包,會被編譯生成到pkg目錄下該文件是.a結(jié)尾

關(guān)于go的整體一個開發(fā)目錄

go_project     // go_project為GOPATH目錄
  -- bin
     -- myApp1  // 編譯生成
     -- myApp2  // 編譯生成
     -- myApp3  // 編譯生成
  -- pkg
  -- src
     -- myApp1     // project1
        -- models
        -- controllers
        -- others
        -- main.go 
     -- myApp2     // project2
        -- models
        -- controllers
        -- others
        -- main.go 
     -- myApp3     // project3
        -- models
        -- controllers
        -- others
        -- main.go

Linux下配置go環(huán)境

1、首先下載linux下的go包:https://studygolang.com/dl/golang/go1.9.2.linux-amd64.tar.gz

2、下載之后

tar -zxvf go1.9.2.linux-amd64.tar.gz 解壓源碼包

3、移動到 /usr/local/go 也就是GOROOT

4、設(shè)置GOPATH,還有PATH環(huán)境變量

export GOROOT=/usr/local/go #設(shè)置為go安裝的路徑
export GOPATH=$HOME/gocode #默認(rèn)安裝包的路徑
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

查看Linux go env

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/root/gocode"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build057487015=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"

go env

以上就是Golang的目錄結(jié)構(gòu)以及在linux下安裝go環(huán)境的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


分享名稱:Golang的目錄結(jié)構(gòu)以及在linux下安裝go環(huán)境-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://weahome.cn/article/jesdh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部