Ошибка компиляции при добавлении заголовочного файла std :: filesystem в мою программу

Я пытаюсь скомпилировать простую программу на C ++ с включенным заголовочным файлом std :: filesytem!

#include <iostream>
#include <filesystem>

int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}

При компиляции я получаю следующую ошибку

In file included from C:/PROGRA~1/MINGW-~1/X86_64~2.0-W/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/filesystem:37,
from C:\Users\{User}\CLionProjects\untitled3\main.cpp:2:
C:/PROGRA~1/MINGW-~1/X86_64~2.0-W/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h: In member function 'std::filesystem::__cxx11::path& std::filesystem::__cxx11::path::operator/=(const std::filesystem::__cxx11::path&)':
C:/PROGRA~1/MINGW-~1/X86_64~2.0-W/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/fs_path.h:237:47: error: no match for 'operator!=' (operand types are 'std::filesystem::__cxx11::path' and 'std::filesystem::__cxx11::path')
|| (__p.has_root_name() && __p.root_name() != root_name()))
~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~

Я на Windows OS, используя MingW 8.1.0 и Clion в качестве IDE
и как изображено на этом https://en.cppreference.com/w/cpp/compiler_support похоже GCC 8.1 уже поддерживает файловую систему std:

Конфигурация ToolChain

РЕДАКТИРОВАТЬ:
Уровень языка установлен в моем CMakeList, как показано ниже

set(CMAKE_CXX_STANDARD 17)

1

Решение

Я на Windows OS, используя MingW 8.1.0 и Clion в качестве IDE

Я только реализовал поддержку MinGW для std::filesystem недавно, и его нет в GCC 8. В настоящее время он доступен только в транке Subversion GCC.

и как изображено на этом https://en.cppreference.com/w/cpp/compiler_support похоже GCC 8.1 уже поддерживает файловую систему std:

Только для платформ, отличных от Windows. Поддержка Windows сильно отличается от поддержки POSIX и требует много дополнительной работы.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]