ошибка C2039: «is_directory»: не является членом «std :: эксперимент :: файловая система» при использовании CMake в Windows - PullRequest
0 голосов
/ 07 апреля 2020

Я создаю проект с использованием nmake в Windows CMakeLists.txt (сокращенно) равен

project(SimManager CXX)

set(CMAKE_CXX_FLAGS -G"NMake Makefiles")

add_executable(SimManager 
    Source/main.cpp
    )


target_link_libraries(${PROJECT_NAME} PRIVATE stdc++fs)

set_target_properties (SimManager PROPERTIES
    CXX_STANDARD 17
    CXX_STANDARD_REQUIRED TRUE
    CXX_EXTENSIONS FALSE
    )

при запуске из папки сборки cmake -G "Makeake-файлы NMake" .. nmake Я получаю ошибку :

error C2039: 'is_directory': is not a member of 'std::experimental::filesystem'

Следуя некоторым предложениям онлайн Почему работает link_libraries (stdc ++ fs), но не -lstdc ++ fs? Я использовал этот флаг stdc++fs в target_link_libraries, но ошибка все еще не go исчезла

Почему это не работает, а чего не хватает?

Кроме того, мне все равно нужно ввести cmake -G"NMake Makefiles" .., если я просто введите cmake .., это создает решение для Visual Studio

Но у меня уже установлен флаг компиляции с использованием строки

set(CMAKE_CXX_FLAGS -G"NMake Makefiles")

почему он не распознает флаг, который Я поставил? Спасибо

...