Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengecualikan Fail Sumber Go Berdasarkan Seni Bina Semasa Penyusunan?

Bagaimana untuk Mengecualikan Fail Sumber Go Berdasarkan Seni Bina Semasa Penyusunan?

Barbara Streisand
Barbara Streisandasal
2024-11-01 00:00:02192semak imbas

How to Exclude Go Source Files Based on Architecture During Compilation?

Cara Mengecualikan Fail Sumber Go oleh Seni Bina Semasa Menyusun

Masalah:

Apabila menyusun atur cara Go dengan berbilang pakej , anda mungkin menghadapi ralat jika sesetengah pakej mengandungi kebergantungan (cth., CGo) yang hanya terpakai untuk seni bina tertentu. Dalam kes sedemikian, anda mungkin ingin mengecualikan fail sedemikian semasa penyusunan untuk seni bina bukan sasaran.

Penyelesaian:

Bina kekangan dalam Go menyediakan cara untuk menyertakan atau kecualikan fail sumber berdasarkan pelbagai syarat, termasuk seni bina sasaran. Begini cara untuk menggunakannya:

  • Tambahkan Kekangan Binaan pada Fail:

    Di bahagian atas fail sumber yang ingin anda kecualikan, tambahkan baris komen bermula dengan // build. Berikutan arahan ini, nyatakan syarat di mana fail harus disusun. Contohnya, untuk mengecualikan fail untuk semua seni bina kecuali Linux:

    // +build !linux

    Untuk mengecualikan fail untuk semua seni bina kecuali 386:

    // +build !386

    Untuk mengecualikan fail apabila CGo didayakan:

    // +build !cgo
  • Gunakan Konvensyen Penamaan Fail:

    Sebagai alternatif, anda boleh menggunakan konvensyen penamaan fail untuk menentukan kekangan binaan. Sebagai contoh, menamakan fail package_linux.go akan menyebabkan ia dimasukkan hanya semasa membina untuk Linux.

Contoh:

Pertimbangkan perkara berikut struktur direktori:

- main.go
- linux.go
- windows.go
  • main.go ialah fail Go utama.
  • linux.go mengandungi kod untuk Linux sahaja.
  • windows.go mengandungi kod untuk Windows sahaja.

Untuk menyusun atur cara untuk Linux, tambahkan kekangan binaan berikut pada linux.go:

// +build linux

Untuk menyusun atur cara untuk Windows, tambah binaan berikut kekangan kepada windows.go:

// +build windows

Dengan menggunakan kekangan binaan, anda boleh memastikan bahawa hanya kod yang diperlukan disertakan semasa penyusunan untuk seni bina yang berbeza, sekali gus menyelesaikan isu percubaan untuk menyusun fail khusus seni bina pada bukan -platform sasaran.

Atas ialah kandungan terperinci Bagaimana untuk Mengecualikan Fail Sumber Go Berdasarkan Seni Bina Semasa Penyusunan?. 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