溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

install與build在go中有什么不同地方

發(fā)布時間:2020-12-15 15:25:07 來源:億速云 閱讀:281 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章給大家分享的是有關(guān)install與build在go中有什么不同地方,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

go build:

go build 用于編譯包生成可執(zhí)行文件,必須有main包才可以

go install:

go install 的作用有兩個:主要用來生成庫和工具,(如果有main包)編譯后生成的可執(zhí)行工具文件放到 bin 目錄、$GOPATH/bin,編譯后的庫文件放到 pkg 目錄下($GOPATH/pkg)

補充:go build 命令

簡介

1、用于編譯源碼文件或代碼包

-編譯非命令源碼文件不會產(chǎn)生任何結(jié)果文件

-編譯命令源碼文件會在該命令的執(zhí)行目錄中生成一個可執(zhí)行文件

2、執(zhí)行該命令且以若干源碼文件作為參數(shù)時,只有這些文件會被編譯

-注意列出代碼運行所需的全部源碼文件,否則可能產(chǎn)生編譯錯誤

3、執(zhí)行該命令且不追加任何參數(shù)時,它會試圖把當(dāng)前目錄作為代碼包并編譯

4、執(zhí)行該命令且以代碼包的導(dǎo)入路徑作為參數(shù)時,該代碼包及其依賴會被編譯

-加入-a標(biāo)記后所有涉及到的代碼包都會被重新編譯

-不加入-a標(biāo)記,則只會編譯歸檔文件中不是最新的代碼包

使用

編譯源碼文件:go build [fileName].go

編譯代碼包:go build [代碼包的導(dǎo)入路徑]

常見標(biāo)記

標(biāo)記描述
-o指定輸出文件。
-a強行對所有涉及到的代碼包(包括標(biāo)準(zhǔn)庫中的代碼包)進(jìn)行重新構(gòu)建,即使它們已經(jīng)是最新的了。
-n打印構(gòu)建期間所用到的其它命令,但是并不真正執(zhí)行它們。
-p n構(gòu)建的并行數(shù)量(n)。默認(rèn)情況下并行數(shù)量與CPU數(shù)量相同。
-race開啟數(shù)據(jù)競爭檢測。此標(biāo)記目前僅在linux/amd64、darwin/amd64和windows/amd64平臺下被支持。
-v打印出被構(gòu)建的代碼包的名字。
-work打印出臨時工作目錄的名字,并且取消在構(gòu)建完成后對它的刪除操作。
-x打印出構(gòu)建期間所用到的其它命令。

例如:

go build -a [代碼包的導(dǎo)入路徑]

以上就是install與build在go中有什么不同地方,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI