> 백엔드 개발 > C++ > 언제 \'-stdlib=libstdc \' 플래그를 GCC와 함께 사용해야 합니까?

언제 \'-stdlib=libstdc \' 플래그를 GCC와 함께 사용해야 합니까?

Patricia Arquette
풀어 주다: 2024-10-23 15:31:02
원래의
624명이 탐색했습니다.

When Should the '-stdlib=libstdc  ' Flag Be Used with GCC?

GCC에서 '-stdlib=libstdc' 플래그를 사용하는 경우

gcc로 컴파일할 때 '-stdlib=libstdc' 플래그 GNU 표준 C 라이브러리(libstdc)를 런타임 라이브러리로 사용하도록 지정해야 합니다.

컴파일러가 자동으로 libstdc를 사용합니까?

아니요. 운영 체제 및 특정 GCC 버전에 따라 컴파일러는 기본적으로 다른 런타임 라이브러리를 사용할 수 있습니다.

'-stdlib=libstdc' 플래그를 사용하는 경우

다음은 '-stdlib=libstdc' 플래그를 사용해야 하는 몇 가지 시나리오입니다.

  • Linux의 경우: 대부분의 Linux 배포판은 기본적으로 libstdc를 사용하지만 플래그를 명시적으로 지정하면 다음을 보장할 수 있습니다. 다양한 버전 간의 호환성.
  • Mavericks 이전의 macOS: macOS Mavericks 이전에는 기본 런타임 라이브러리가 Apple의 libstdc 이전 버전이었습니다. libc(C 11 지원)를 사용하려면 '-stdlib=libc' 플래그를 사용해야 합니다.
  • Mavericks 이후 macOS에서는: macOS Mavericks 이후 libc가 기본값이 되었으며 '-stdlib=libstdc' 플래그를 사용하면 안 됩니다.

컴파일 명령

다른 운영 체제에서 libstdc를 사용하여 C 11 코드를 컴파일하려면 다음을 사용하십시오. 명령:

  • Linux: g -std=c 11 -stdlib=libstdc input.cxx -o a.out
  • Mavericks 이전의 macOS: g -std=c 11 -stdlib=libc input.cxx -o a.out
  • Mavericks 이후의 macOS: clang -std=c 11 input.cxx -o a. 아웃

위 내용은 언제 \'-stdlib=libstdc \' 플래그를 GCC와 함께 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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