ホームページ > バックエンド開発 > C++ > C 1z で Experimental::filesystem を使用する場合のリンカー エラーを修正するにはどうすればよいですか?

C 1z で Experimental::filesystem を使用する場合のリンカー エラーを修正するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-15 03:45:02
オリジナル
593 人が閲覧しました

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

C 1z での Experimental::filesystem リンカー エラーを解決する方法

C 1z 開発で、新しい Experimental::filesystem ライブラリを利用しようとしているユーザーがリンカーに遭遇しました。エラー。 Experimental::filesystem は別の仕様であるため、この問題は C 1z サポートとは異なります。

この問題を解決するには、ユーザーはコードを適切なライブラリにリンクする必要があります。 GCC 5.3 以降の場合は、-lstdc fs フラグを使用します。

g++ main.cpp -O2 -g -o go -lstdc++fs
ログイン後にコピー

このライブラリは静的ライブラリであるため、リンカー コマンド内でこれに依存するオブジェクトの後に配置する必要があります。

更新:

  • 2017 年 11 月: GCC 8.x では、std::filesystem 名前空間に C 17 ファイルシステム ライブラリの実装が導入されています。 -std=gnu 17 または -std=c 17 を使用する場合、-lstdc fs は引き続き必要です。
  • 2019 年 1 月: GCC 9 では、C 17 std の -lstdc fs が不要になりました。 :filesystem コンポーネント。
  • 2024 年 4 月: GCC 13.3 は、std::experimental::filesystem シンボルを -lstdc exp.
に追加します。

以上がC 1z で Experimental::filesystem を使用する場合のリンカー エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート