在Ubuntu系统上编译Golang项目时,可以采用以下技巧来提高效率和确保兼容性:
sudo apt update
sudo apt install -y build-essential golang git
wget https://golang.org/dl/go{GO_VERSION}.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go{GO_VERSION}.linux-amd64.tar.gz
将 {GO_VERSION}
替换为实际的Golang版本号。
~/.profile
文件,添加以下内容:export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
然后执行:
source ~/.profile
go version
如果显示出Golang的版本信息,说明安装成功。
export CGO_ENABLED=0
export GOOS=linux
export GOARCH=amd64
go build -o ./build/ ./main.go
go build -o hello_linux main.go
go build -a
go build -buildcache true
-ldflags
选项优化编译后的文件大小和调试信息:go build -ldflags "-s -w" main.go
GOOS=linux GOARCH=amd64 go build -o hello_linux main.go
go build -c
go build -s
go build -p 8
go build -buildcache true
设置 GOCACHE
环境变量:
export GOCACHE=$HOME/.cache/go
go mod vendor
:将依赖项放入 vendor
目录,避免每次编译都下载依赖项。sudo apt-get install upx
upx main
通过以上技巧,可以在Ubuntu系统上高效地编译Golang包,并优化编译速度和生成的可执行文件大小。