Dengan pembangunan pengkomputeran awan, semakin banyak aplikasi perlu dijalankan merentasi platform, sebagai bahasa yang ditaip kuat, juga berfungsi dengan baik dalam bidang ini. Penyusunan silang ialah proses menyusun kod sumber dalam satu persekitaran platform dan menjalankannya pada platform lain. Artikel ini akan memperkenalkan proses kompilasi silang Golang.
Proses kompilasi silang
Mula-mula, anda perlu memuat turun rantai alat kompilasi silang. Di laman web rasmi Golang, kami boleh menemui pautan muat turun yang sepadan dengan platform, seperti yang ditunjukkan di bawah:
Selepas memilih sistem pengendalian, seni bina dan versi CPU yang sepadan, Unzip ke mana-mana direktori.
Seterusnya, anda perlu menetapkan pembolehubah persekitaran dalam terminal supaya Golang boleh mencari rantai alat yang betul semasa menyusun. Mengambil sistem macOS sebagai contoh, masukkan arahan berikut:
export GOROOT=/usr/local/go export GOOS=linux export GOARCH=amd64 export CGO_ENABLED=0 export GOBIN=$GOROOT/bin export PATH=$PATH:$GOBIN
di mana, GOROOT
mewakili laluan pemasangan Golang, GOOS
mewakili sistem pengendalian sasaran, GOARCH
mewakili seni bina CPU sasaran, dan CGO_ENABLED
mewakili sama ada untuk mendayakannya, GOBIN
mewakili laluan fail boleh laku yang disusun dan PATH
ialah pembolehubah sistem yang digunakan untuk menetapkan pembolehubah persekitaran dalam sistem Unix/Linux.
Seterusnya, tulis atau muat turun kod program Golang untuk dikompil silang dan simpannya sebagai fail .go
. Sebagai contoh, kod berikut melaksanakan program Hello World yang mudah menggunakan Golang:
package main import "fmt" func main() { fmt.Println("Hello, World!") }
Kemudian, gunakan arahan berikut untuk menyusun kod ke dalam fail boleh laku:
$ go build -v -o hello
Di mana, -v
parameter mewakili output Untuk butiran, parameter -o
menentukan nama fail boleh laku yang disusun. Dalam arahan di atas, hello
menentukan nama fail boleh laku yang dijana, yang juga boleh digantikan dengan nama lain.
Selepas penyusunan selesai, kami mendapat fail boleh laku yang dijalankan pada platform semasa. Seterusnya, anda perlu menggunakan rantai alat kompilasi silang untuk menjana binari yang boleh berjalan pada platform sasaran. Gunakan arahan berikut untuk menyusun silang:
$ GOOS=linux GOARCH=arm GOARM=5 go build -v -o hello-arm5
Dalam arahan di atas, GOOS
menentukan sistem pengendalian sasaran sebagai Linux, GOARCH
menentukan seni bina CPU sasaran sebagai ARM dan GOARM
menentukan ARM versi, di sini dinyatakan sebagai 5. Baris arahan ini akan menjana fail binari bernama hello-arm5
dalam direktori semasa.
Selain Linux dan ARM, Golang juga menyokong sistem pengendalian dan seni bina lain, seperti macOS, Windows, FreeBSD, OpenBSD, NetBSD, DragonFlyBSD, Solaris, AIX dan seni bina CPU lain, seperti 386, amd64 , lengan, mips, mipsle, mips64, mips64le, ppc64, ppc64le, s390x.
Pertimbangan kompilasi silang
Apabila menyusun silang, anda perlu memberi perhatian kepada perkara berikut:
syscall
, anda perlu menggunakan antara muka panggilan sistem tertentu seperti windows
, linux
dan darwin
untuk sistem pengendalian sasaran. Ringkasan
Artikel ini memperkenalkan proses kompilasi silang Golang, termasuk muat turun dan pemasangan rantai alat, tetapan pembolehubah persekitaran, penyusunan kod dan langkah berjaga-jaga kompilasi silang . Untuk pembangunan aplikasi merentas platform, kompilasi silang adalah kemahiran yang diperlukan. Saya harap artikel ini akan membantu anda.
Atas ialah kandungan terperinci proses penyusunan silang golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!