> 백엔드 개발 > C++ > 본문

C 1z에서 Experiment::filesystem을 사용할 때 링커 오류를 어떻게 수정합니까?

Susan Sarandon
풀어 주다: 2024-11-15 03:45:02
원래의
519명이 탐색했습니다.

How do I fix the linker error when using experimental::filesystem in C  1z?

C 1z에서 실험적::filesystem 링커 오류를 해결하는 방법

C 1z 개발에서 새로운 실험적::filesystem 라이브러리를 활용하려는 사용자가 링커를 발견했습니다. 오류. Experiment::filesystem이 별도의 사양이므로 이 문제는 C 1z 지원과 다릅니다.

이 문제를 해결하려면 사용자는 코드를 적절한 라이브러리에 연결해야 합니다. GCC 5.3 이상의 경우 -lstdc fs 플래그를 사용하세요.

g++ main.cpp -O2 -g -o go -lstdc++fs
로그인 후 복사

이 라이브러리는 정적 라이브러리이므로 링커 명령에서 이를 의존하는 모든 개체 뒤에 배치되어야 합니다.

업데이트:

  • 11월 2017: GCC 8.x에는 std::filesystem 네임스페이스에 C 17 파일 시스템 라이브러리 구현이 도입되었습니다. -std=gnu 17 또는 -std=c 17을 사용하는 경우 -lstdc fs가 여전히 필요합니다.
  • 2019년 1월: GCC 9에서는 C 17 std에 대해 -lstdc fs가 필요하지 않습니다. :파일 시스템 구성 요소.
  • 4월 2024: GCC 13.3에서는 -lstdc exp에 std::experimental::filesystem 기호를 추가합니다.

위 내용은 C 1z에서 Experiment::filesystem을 사용할 때 링커 오류를 어떻게 수정합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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