make编译报错:fatal error: filesystem: 没有那个文件或目录 #include <filesystem>
报错:
fatal error: filesystem: 没有那个文件或目录 #include(filesystem)
解决方法一:
修改头文件
#include <experimental/filesystem>
添加依赖
在编译时,后面添加:-lstdc++fs
编译通过。
解决方法二:升级 gcc
升级到 gcc-8或8以上 问题即可解决:
添加 PPA 存储库
首先,您需要添加 Ubuntu Toolchain PPA 存储库,该存储库包含了最新的 GCC 版本。使用以下命令添加该存储库:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
更新软件包列表
sudo apt-get update
安装 GCC 11.3
sudo apt-get install gcc-11 g++-11
更改默认 GCC 版本
设置 GCC 11.3 为默认的 GCC 版本:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110 --slave /usr/bin/g++ g++ /usr/bin/g++-11
检查 GCC 版本
gcc --version
降低gcc版本或使用其他版本的 gcc
如果系统中已经存在多个版本的 gcc
您想使用其他版本的 GCC,可以使用以下命令更改默认版本:
# 使用其他版本的 gcc
sudo update-alternatives --config gcc
# 或者降低 g++ 的版本
sudo apt-get install g++-9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 100