2011-04-26 4 views
1

gcc 또는 clang을 사용하여 컴파일을 위해 -g 옵션을 사용했습니다. 그렇다면 전체 바이너리 컴파일 과정에서 최종 바이너리가 -g 옵션을 사용하지 않은 경우와 성능면에서 동등한가요?링크 시간에 -g를 사용하지 않으면 어떻게됩니까?

+0

-g를 사용하면 성능에 큰 차이가 없다는 것을 알았습니다 ... 결과 바이너리가 디버거를 단계별로 처리하는 것이 어려울지라도 사실 -g 및 -O를 사용할 수도 있습니다. – user168715

답변

0

디버깅 정보가있는 바이너리의 성능이 바이너리와 다른 경우 일반적으로 컴파일러 버그로 간주됩니다. 그렇습니다. 동일한 성능을 기대해야합니다.

0

-g은 컴파일 단계에서 디버깅 정보를 생성합니다. 그것은 링커에 의해 완전히 무시됩니다. 따라서 여러분이하고있는 것은 -g을 사용하여 한 단계로 컴파일하고 링크하는 것과 같습니다.

관련 문제