在 Linux 中,使用 Golang 實現跨平臺編譯非常簡單。Golang 提供了一個名為 GOOS
和 GOARCH
的環境變量,分別用于設置目標操作系統和目標架構。以下是一些常見的 GOOS
和 GOARCH
值:
GOOS
: darwin (macOS), freebsd, linux, windows 等GOARCH
: amd64, arm, arm64, 386, ppc64le 等要實現跨平臺編譯,你需要按照以下步驟操作:
打開終端。
切換到你的 Golang 項目目錄。
設置 GOOS
和 GOARCH
環境變量,然后運行 go build
命令。例如,如果你想為 Windows 64位編譯一個程序,你可以執行以下命令:
GOOS=windows GOARCH=amd64 go build -o myprogram.exe
這將在當前目錄下生成一個名為 myprogram.exe
的可執行文件,適用于 Windows 64位系統。
如果你想為多個目標平臺編譯程序,你可以使用腳本來簡化這個過程。例如,以下是一個簡單的 bash 腳本,用于為 Linux 和 Windows 編譯程序:
#!/bin/bash
# 編譯 Linux 可執行文件
GOOS=linux GOARCH=amd64 go build -o myprogram_linux
# 編譯 Windows 可執行文件
GOOS=windows GOARCH=amd64 go build -o myprogram_windows.exe
echo "編譯完成!"
將此腳本保存為 build.sh
,然后在終端中運行 chmod +x build.sh
以使其可執行。接下來,運行 ./build.sh
來編譯程序。
注意:在編譯過程中,可能會遇到一些平臺相關的依賴問題。在這種情況下,你需要確保已安裝目標平臺的依賴庫。