Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menanggalkan Maklumat Penyahpepijatan daripada Kod Go yang Disusun?

Bagaimana untuk Menanggalkan Maklumat Penyahpepijatan daripada Kod Go yang Disusun?

Susan Sarandon
Susan Sarandonasal
2024-11-15 07:31:02936semak imbas

How to Strip Debugging Information from Compiled Go Code?

Melucutkan Maklumat Penyahpepijatan daripada Kod Go Compiled

Maklumat penyahpepijatan sering disertakan dalam kod Go yang disusun menggunakan gc secara lalai. Walaupun ia boleh membantu untuk tujuan penyahpepijatan, ia juga meningkatkan saiz boleh laku dan menjadikannya terdedah kepada penyahkompilasi.

Mengalih keluar Maklumat Penyahpepijatan

Untuk menghapuskan maklumat penyahpepijatan semasa kompilasi dengan gc, nyatakan bendera "-ldflags" bersama-sama dengan pilihan "-s" dan "-w". Perintah berikut menunjukkan ini:

go build -ldflags="-s -w"

Pilihan "-s" mengalih keluar jadual simbol, manakala pilihan "-w" menindas maklumat nyahpepijat DWARF. Ini dengan berkesan mengalih keluar semua maklumat penyahpepijatan daripada boleh laku yang disusun.

Nota tentang gccgo

Menggunakan gccgo tidak menyelesaikan isu ini. Menyusun tanpa bendera "-g" akan mengakibatkan boleh laku yang rosak yang menghasilkan ralat yang berkaitan dengan kehilangan maklumat nyahpepijat.

Pilihan Tambahan dalam Go 1.13

Dengan pengenalan Pergi 1.13, bendera "-trimpath" boleh digunakan untuk mengurangkan panjang laluan fail yang disimpan dalam boleh laku. Ini meminimumkan lagi saiz kod yang disusun.

Atas ialah kandungan terperinci Bagaimana untuk Menanggalkan Maklumat Penyahpepijatan daripada Kod Go yang Disusun?. 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