Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah saya membina binari Go mudah alih untuk sistem pengendalian dan seni bina yang berbeza?

Bagaimanakah saya membina binari Go mudah alih untuk sistem pengendalian dan seni bina yang berbeza?

DDD
DDDasal
2024-11-15 15:21:02503semak imbas

How do I build portable Go binaries for different operating systems and architectures?

Kemudahalihan Go Binari

Go binari direka bentuk untuk merentas platform, membenarkan pembangun membina aplikasi yang boleh dijalankan pada berbilang sistem pengendalian dan seni bina. Walau bagaimanapun, untuk mencapai kemudahalihan merentas konfigurasi berbeza memerlukan pemahaman tentang proses pemautan dan penyusunan Go.

S1: Kemudahalihan binari Linux amd64

J: Ya, binari amd64 yang disusun pada sistem Ubuntu akan dijalankan pada mana-mana sistem Ubuntu/Debian 64-bit lain tanpa pengubahsuaian. Ini kerana Linux menggunakan set perpustakaan sistem biasa untuk aplikasi 64-bit, memastikan keserasian binari merentas pengedaran.

S2: Membina Perduaan 32-bit untuk Debianlikes

J: Untuk mencipta binari x86_64 yang akan dijalankan pada kedua-dua 64-bit dan 32-bit Debianlikes, gunakan arahan berikut:

GOOS=windows GOARCH=386 go build

Menetapkan GOOS kepada "windows" dan GOARCH kepada "386" memaksa proses binaan untuk menjana 32-bit boleh laku.

S3: Memastikan x86_64 Boleh Laksana dihidupkan Windows

J: Membina binari pada sistem Windows 64-bit tidak secara automatik menjamin bahawa ia akan menyasarkan seni bina x86_64. Untuk memastikan x86_64 boleh laku, nyatakan bendera -target semasa membina:

go build -target=amd64

Bendera ini secara eksplisit menetapkan seni bina sasaran untuk binari yang disusun, tanpa mengira sistem pengendalian hos.

Atas ialah kandungan terperinci Bagaimanakah saya membina binari Go mudah alih untuk sistem pengendalian dan seni bina yang berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn