Мне нужно добавить заголовок "экспериментальная/файловая система" в мой проект
#include <experimental/filesystem>
int main() {
auto path = std::experimental::filesystem::current_path();
return 0;
}
Итак, я использовал флаг -lstdС++ fs и связался с libstdС++ fs.a
cmake_minimum_required(VERSION 3.7)
project(testcpp)
set(CMAKE_CXX_FLAGS "-std=c++14 -lstdc++fs" )
set(SOURCE_FILES main.cpp)
target_link_libraries(${PROJECT_NAME} /usr/lib/gcc/x86_64-linux-gnu/7/libstdc++fs.a)
add_executable(testcpp ${SOURCE_FILES})
Однако у меня есть следующая ошибка:
Ошибка CMake в CMakeLists.txt: 9 (target_link_libraries): не удается указать библиотеки ссылок для целевого "testcpp", который не создан с помощью этот проект.
Но если я скомпилирую напрямую, это нормально:
g++-7 -std=c++14 -lstdc++fs -c main.cpp -o main.o
g++-7 -o main main.o /usr/lib/gcc/x86_64-linux-gnu/7/libstdc++fs.a
Где моя ошибка?