第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Makefile 未設(shè)置 GOOS 環(huán)境變量

Makefile 未設(shè)置 GOOS 環(huán)境變量

Go
四季花海 2023-06-19 15:50:23
我在 Makefile 下面寫(xiě)了為不同平臺(tái)構(gòu)建 Golang 代碼。(我的操作系統(tǒng)是 Windows 10 并通過(guò)命令提示符運(yùn)行 Makefile)GOCMD   =  goGOBUILD =  $(GOCMD)  buildGOFILES =   $(wildcard *.go)SONG_PATH =  ./song-serviceSONG_PATH_OUTPOUT =  ./song-service/cmdSONG_BINARY_NAME_LIN =  songservice_linsong-build-lin:    set GOOS=linux    set GOARCH=amd64    $(GOBUILD)  -o "$(SONG_PATH_OUTPOUT)/$(SONG_BINARY_NAME_LIN)" -v "$(SONG_PATH)/$(GOFILES)"當(dāng)我運(yùn)行時(shí)make song-build-lin它運(yùn)行沒(méi)有錯(cuò)誤,但 GOOS 變量沒(méi)有設(shè)置。但是當(dāng)我set GOOS=linux直接在命令提示符下運(yùn)行時(shí)它起作用了!
查看完整描述

2 回答

?
蝴蝶刀刀

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊

終于找到答案了

我使用 VSCode 終端運(yùn)行 make 命令,我使用的終端類(lèi)型是命令提示符。如果將終端類(lèi)型更改為 Git bash,命令將正常運(yùn)行。


查看完整回答
反對(duì) 回復(fù) 2023-06-19
?
梵蒂岡之花

TA貢獻(xiàn)1900條經(jīng)驗(yàn) 獲得超5個(gè)贊

這是一個(gè)很好的問(wèn)題,也是一個(gè)很好的話(huà)題。

我被迫將 Windows 用于工作目的以進(jìn)行開(kāi)發(fā)。我有一些使用 Windows 的隊(duì)友,一些使用 Mac 的隊(duì)友,還有一些人更喜歡在 Linux 上工作但不能,我們剛得到一些 Linux 服務(wù)器,我們需要將其編譯為可執(zhí)行文件。我最近瀏覽了 Makefile 教程網(wǎng)站https://makefiletutorial.com/,他們有一個(gè)關(guān)于導(dǎo)出變量的部分。

在我的 Windows 機(jī)器上,我可以使用一個(gè) shell,cygwin。下面是我能夠使用的 make 文件中的編譯...



# compile - cross compile all platforms

compile:

    @echo " === Compiling for every OS and Platform === "

    make compile-linux

    make compile-win 

    make compile-mac

    @echo " === COMPLETED! === "


# compile-linux - compile and create a linux executable for 64bit architecture

# NOTE: this sets the GOOS and GOARCH just for this makefile rule

compile-linux: export GOOS=linux

compile-linux: export GOARCH=amd64

compile-linux:

    go build -o bin/executable-linux.exe


# compile-win - compile and create a windows executable for 64bit architecture 

compile-win: export GOOS=windows

compile-win: export GOARCH=amd64

compile-win:

    go build -o bin/executable-win.exe


# compile-mac - compile and create a mac os executable for 64bit architecture 

compile-mac: export GOOS=darwin

compile-mac: export GOARCH=amd64

compile-mac:

    go build -o bin/executable-mac

這似乎對(duì)我有用,使用 Powershell 7 和/或 Windows 命令行,以及我使用 MacOS 的隊(duì)友。

這是通用的,可以添加到任何地方使用。


對(duì)于這個(gè)解決方案(雖然它已經(jīng)回答了 2 年以上)可能是這樣的......


GOCMD   =  go

GOBUILD =  $(GOCMD)  build

GOFILES =   $(wildcard *.go)

SONG_PATH =  ./song-service

SONG_PATH_OUTPOUT =  ./song-service/cmd

SONG_BINARY_NAME_LIN =  songservice_lin


song-build-lin: export GOOS=linux

song-build-lin: export GOARCH=amd64

song-build-lin:

    $(GOBUILD)  -o "$(SONG_PATH_OUTPOUT)/$(SONG_BINARY_NAME_LIN)" -v "$(SONG_PATH)/$(GOFILES)"

我很想知道這是否適用于您和其他人,以及是否有任何其他改進(jìn)。我不是一個(gè)巨大的 Makefile 人,我很樂(lè)意學(xué)習(xí)和改進(jìn)它。


查看完整回答
反對(duì) 回復(fù) 2023-06-19
  • 2 回答
  • 0 關(guān)注
  • 226 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)