Go 컴파일 코드에서 디버깅 정보 제거
디버깅 정보는 기본적으로 gc를 사용하여 컴파일된 Go 코드에 자주 포함됩니다. 디버깅 목적에 도움이 될 수 있지만 실행 파일의 크기가 늘어나고 디컴파일에 취약해집니다.
디버깅 정보 제거
진행 중에 디버깅 정보를 제거하려면 gc로 컴파일하려면 "-s" 및 "-w" 옵션과 함께 "-ldflags" 플래그를 지정하십시오. 다음 명령은 이를 보여줍니다.
go build -ldflags="-s -w"
"-s" 옵션은 기호 테이블을 제거하는 반면 "-w" 옵션은 DWARF 디버그 정보를 억제합니다. 이렇게 하면 컴파일된 실행 파일에서 모든 디버깅 정보가 효과적으로 제거됩니다.
gccgo에 대한 참고 사항
gccgo를 사용해도 이 문제가 해결되지 않습니다. "-g" 플래그 없이 컴파일하면 누락된 디버그 정보와 관련된 오류를 출력하는 손상된 실행 파일이 생성됩니다.
Go 1.13의 추가 옵션
도입 Go 1.13에서는 "-trimpath" 플래그를 사용하여 실행 파일에 저장된 파일 경로의 길이를 줄일 수 있습니다. 이렇게 하면 컴파일된 코드의 크기가 더욱 최소화됩니다.
위 내용은 컴파일된 Go 코드에서 디버깅 정보를 제거하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!