fatal error: filesystem: 没有那个文件或目录
问题:
#include 包含上述头文件出错,未找到该文件。
解决方法一:
- 修改头文件
#include <experimental/filesystem> - 添加依赖
在编译时,后面添加:-lstdc++fs - 编译通过。
解决方法二:升级 gcc
升级到 gcc-8 问题即可解决:
1. 查看 gcc 版本
gcc --version
2. 安装 gcc-8
sudo apt-get update
sudo apt-get install gcc-8 g+±8
3. 查看 gcc 版本,这时候还是之前的版本
gcc --version
4. 查看 gcc-8 版本,已经有 gcc-8 版本
gcc-8 --version
5. 更换默认版本为 gcc-8
6. 如果你的 gcc 版本为 7,若不为 7,将其替换成别的版本
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 10 --slave /usr/bin/g++ g++ /usr/bin/g+±7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 20 --slave /usr/bin/g++ g++ /usr/bin/g+±8
8.选择 gcc-8 对应的数字
sudo update-alternatives --config gcc
再次查看 gcc 版本,gcc 版本为选择的版本(这里11是之前装的)
gcc -version
再次编译,通过。
当然,使用 sudo update-alternatives --config gcc 也可以把 gcc 替换成原来的版本。