W języku C możemy zbudować wersję debugowania lub wersję Release plików binarnych (pliki obiektowe i plik wykonywalny). Jak możemy to zrobić w Go?Jak zbudować wersję binarną wersji Release w Go?
15
A
Odpowiedz
22
W wersji Go nie jest typowa wersja debugowania lub wersja wydania. Domyślnie go build
łączy informacje o symbolu i debugowaniu z plikami binarnymi. Możesz jednak usunąć symbol i informacje o debugowaniu za pomocą go build -ldflags "-s -w"
.
5
Tutaj jest trochę dokumentacji - https://golang.org/doc/gdb#Introduction. – Greg
Masz rację, ale myślę, że istnieje dobry powód, dla którego nie jest typowe obcinanie symboli - jeśli na przykład dostaniesz raport o paniki na wolności, byłoby wspaniale mieć tam symbole, które mogłyby informować. Ślad stosu. – twotwotwo
Myślę, że "-s" (pomijając tabelę symboli i informacje debugowania) zawiera już "-w" (pomijając tabelę symboli DWARF), więc nie powinno być potrzeby określania obu. Przy użyciu wykonywanego programu, "-s -w" daje dokładnie taki sam rozmiar jak "-s". – rob74