> 백엔드 개발 > C++ > GCC로 `info.c`를 컴파일하는 데 `-lstdc` 플래그가 필요한 이유는 무엇입니까?

GCC로 `info.c`를 컴파일하는 데 `-lstdc` 플래그가 필요한 이유는 무엇입니까?

Patricia Arquette
풀어 주다: 2024-11-29 19:25:21
원래의
521명이 탐색했습니다.

Why Does Compiling `info.c` with GCC Require the `-lstdc  ` Flag?

GCC로 C 프로그램 컴파일

GCC는 C 코드를 컴파일할 수 있지만 "info.c"를 컴파일하려고 할 때 컴파일러 오류가 발생합니다. "는 링커 오류로 인해 발생합니다. 이러한 오류는 표준 C 라이브러리에 대한 연결 부족으로 인해 발생합니다.

이 문제를 해결하려면 컴파일 명령에 -lstdc 플래그를 추가하세요.

gcc info.C -lstdc++
로그인 후 복사

또는 더 간단한 해결 방법은 다음과 같습니다. 다음을 수행하는 g 를 활용합니다.

  • 다음과 유사하게 파일 확장자를 기반으로 적절한 백엔드 컴파일러를 선택합니다. GCC.
  • 모든 C 소스 파일을 C로 컴파일합니다. 이는 GCC가 .c 파일을 C로 컴파일하는 것과 대조됩니다.
  • 기본적으로 입력 언어에 관계없이 연결 단계에 libstdc를 포함합니다.

Rup의 댓글에서 발췌한 다음 내용은 차이점:

"GCC는 파일 확장자를 기반으로 올바른 백엔드 컴파일러를 선택합니다. 그러나 기본적으로 표준 C 및 GCC 도우미 라이브러리에 대해서만 바이너리를 연결합니다. 이와 대조적으로 g는 연결 단계에 libstdc를 포함합니다. 기본적으로 입력 언어에 관계없이 설정됩니다."

위 내용은 GCC로 `info.c`를 컴파일하는 데 `-lstdc` 플래그가 필요한 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿