2017-02-09 9 views
1

GCCとクランの最新バージョンでコンパイルするexperimental/filesystemを得ることについていくつかの質問がありました:experimental::filesystem linker errorなぜ私はまだ-lstdC++ fsを使用する必要がありますか?

しかし、今filesystemは右、experimentalためので、これ以上の必要性や-lstdc++fsフラグに受け入れられてきましたか? clang++またはg++のいずれかのヘッドバージョンに私がすることができていなくても#include <filesystem>

間違っ私は試着:http://melpon.org/wandbox

はまだ私が必要とする他のいくつかの引数がありますか? -lstdc++fsちょうど私にexperimentalのバージョンを与えます、どうすれば公式に認められたバージョンを含めることができますか?

+5

ファイルシステムに関する問題を提起する多くの国民のコメントがあります。私は、コンパイラベンダーがこれらの問題を解決するために単に慎重に待っていると思います。 – metalfox

答えて

6

コンパイラをどのように呼び出す必要があるのか​​は、C++標準では指定されていません。これは決めるための実装までであると思うので、まだ-lstdc++fsの必要性があるかもしれません。

C++ 17はまだ公式に標準ではなく、実装ではまだ実装されていないことがあります。最終的にC++ 17が標準になったとしても、実装を魔法のように変更することはありません。実装が必要とするかどうかを示すリンカを定義することさえできません。それは完全に無関係です。

C++ 17が標準となり、実装がそれをサポートし始めてから、公式に受け入れられるバージョンをどのように組み込むことができるかは、実装固有のものです。私たちはおそらく、それがどのように機能するかを待って見なければならないでしょう。

関連する問題