Golang三個編譯基本命令的使用小結(jié)
在運(yùn)行Go語言程序之前,先要將其編譯成二進(jìn)制的可執(zhí)行文件
我們通常在編輯器編寫完源碼后使用go build或go run命令對GO語言程序進(jìn)行編譯
1、go build(編譯)
作用:將Go語言程序和相關(guān)依賴編譯成可執(zhí)行文件
語法格式:go build 【參數(shù)】 fileName
參數(shù):
fileName為所要編譯的文件名,可以是一個或多個Go源文件名(多個文件名之間需要用空格作為分隔符)
-o:指定編譯后的可執(zhí)行文件名
-n:顯示編譯時會用到的所有命令,但不真正執(zhí)行
-x:顯示編譯時用到的所有命令
在當(dāng)前家目錄下有一個demo.go的Go源程序文件(編譯單個文件),無參數(shù)編譯一個文件時,會在當(dāng)前路徑下生成該Go源程序的可執(zhí)行文件,即demo
在當(dāng)前路徑下有兩個文件,main.go文件中調(diào)用了lib.go文件中自定義的一個函數(shù)(編譯多個文件),無參數(shù)編譯多個文件時,會在當(dāng)前路徑下生成第一個Go源程序名稱的可執(zhí)行文件
go build編譯包
在gotest目錄下有一個main.go和一個mypkg目錄(該目錄下有一個mypkg.go)
建議mypkg.go的包名和它的目錄名相一致
參數(shù)實例:
2、go run(編譯并運(yùn)行)
作用:編譯之后立即執(zhí)行Go語言程序,但是不會生成可執(zhí)行文件
語法格式:go run fileName
參數(shù):
fileName為所要編譯的文件名,必須是同一main包下的所有源文件并且不能為空
3、go install(編譯并安裝)
作用:編譯并安裝源文件、軟件包,即把編譯后的可執(zhí)行二進(jìn)制文件安裝到指定的目錄中
go install 的編譯過程有如下規(guī)律:
- go install 是建立在 GOPATH 上的
- GOPATH 下的 bin 目錄放置的是使用 go install 生成的可執(zhí)行文件,可執(zhí)行文件的名稱來自于編譯時的包名
- GOPATH 下的 pkg 目錄放置的是編譯期間的中間文件
若設(shè)置了環(huán)境變量GOBIN,則會把可執(zhí)行二進(jìn)制文件安裝到該目錄,若禁用了Go module則安裝到$GOPATH/pkg/$GOOS_$GOARCH下
我們知道如果在工作目錄下有可執(zhí)行文件時,需要./fileName來進(jìn)行執(zhí)行該文件而不是像使用命令那般只需輸入名稱不需要加上路徑
當(dāng)我們使用go install后,我們就可以使用命令那般使用可執(zhí)行文件
到此這篇關(guān)于Golang三個編譯基本命令的使用小結(jié)的文章就介紹到這了,更多相關(guān)Golang 編譯命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
優(yōu)雅使用GoFrame共享變量Context示例詳解
這篇文章主要為大家介紹了優(yōu)雅使用GoFrame共享變量Context示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06Golang實現(xiàn)自己的Redis數(shù)據(jù)庫內(nèi)存實例探究
這篇文章主要為大家介紹了Golang實現(xiàn)自己的Redis數(shù)據(jù)庫內(nèi)存實例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01go-zero 應(yīng)對海量定時/延遲任務(wù)的技巧
這篇文章主要介紹了go-zero 如何應(yīng)對海量定時/延遲任務(wù),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10Go?WEB框架使用攔截器驗證用戶登錄狀態(tài)實現(xiàn)
這篇文章主要為大家介紹了Go?WEB框架使用攔截器驗證用戶登錄狀態(tài)實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07Go標(biāo)準(zhǔn)庫日志打印及同時輸出到控制臺與文件
Go語言內(nèi)置的log包實現(xiàn)了簡單的日志服務(wù),下面這篇文章主要給大家介紹了關(guān)于Go標(biāo)準(zhǔn)庫日志打印及同時輸出到控制臺與文件的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11golang gin 監(jiān)聽rabbitmq隊列無限消費(fèi)的案例代碼
這篇文章主要介紹了golang gin 監(jiān)聽rabbitmq隊列無限消費(fèi),本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-12-12