将 <experimental/filesystem> 与 CMake 一起使用

问题描述 投票:0回答:1

我正在使用 CMake 构建一个需要 C++14 中的 的项目。运行二进制文件时,我得到了未定义的符号:_ZNSt12experimental10filesystem2v17__cxx114path14_M_split_cmptsEv。

我错过了 cmakelist.txt 中的任何内容吗?

cmake filesystems c++14 c++-experimental
1个回答
0
投票

在这个答案中,我假设您有旧版本的 GCC,它不支持 C++17 或

std::filesystem

对于旧版本的 GCC,文件系统库不是主标准库的一部分。

相反,它作为一个单独的库提供,您需要显式链接。

如果您还没有

target_link_libraries
命令,您需要为您的目标添加一个与
stdc++fs
库链接的命令。

© www.soinside.com 2019 - 2024. All rights reserved.