>  기사  >  백엔드 개발  >  C 코드를 빌드할 때 \'정의되지 않은 기호 ___gxx_personality_v0\' 오류가 발생하는 이유는 무엇입니까?

C 코드를 빌드할 때 \'정의되지 않은 기호 ___gxx_personality_v0\' 오류가 발생하는 이유는 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-24 02:30:10197검색

Why Am I Getting the

"정의되지 않은 기호 ___gxx_personality_v0"과의 연결 오류

gcc 컴파일러로 C 코드를 빌드할 때 "정의되지 않은 기호"라는 오류가 발생할 수 있습니다. ____gxx_personality_v0." 이는 일반적으로 코드 언어에 대해 잘못된 컴파일러를 사용하고 있음을 나타냅니다.

gcc의 기본 동작은 C 코드를 컴파일하는 것입니다. C 코드의 경우 g 컴파일러를 대신 사용해야 합니다. 빌드 명령에서 gcc를 g로 바꾸면 됩니다.

g++ test.cpp

g로 전환한 후에도 오류가 계속 발생하면 빌드 명령에 -lstdc 플래그를 추가해 볼 수 있습니다. 이 플래그는 C 코드에 필요한 기호를 제공하는 표준 C 라이브러리(STL)를 연결합니다.

gcc test.cpp -lstdc++

g를 사용할 때 -lstdc를 사용할 필요는 없습니다. 기본적으로 STL을 자동으로 연결하기 때문입니다. 그러나 경우에 따라 시스템 구성에 적절한 라이브러리가 누락된 경우 필요할 수 있습니다.

솔루션에서 언급한 것처럼 두 가지 방법(-lstdc와 함께 g 또는 gcc 사용)은 확인된 대로 동일한 실행 파일을 생성합니다. MD5 해시를 비교하여 그러나 g를 사용하는 것은 빌드 프로세스를 단순화하므로 C 코드에 권장되는 접근 방식입니다.

위 내용은 C 코드를 빌드할 때 \'정의되지 않은 기호 ___gxx_personality_v0\' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.