在 Ubuntu 18,04 中升级 gcc 版本

在 Ubuntu 18,04 中升级 gcc 版本

我在 WSL 中运行 Ubuntu 18.04,用它来编译我的 c++ 程序。

我需要编写一个程序,获取某个目录中所有文件的名称并将它们添加到字符串向量中。浏览互联网后,我发现我可以使用“文件系统”库以简单易行的方式完成此操作。

问题是,每当我尝试使用此答案时,我都会收到错误'filesystem' has not been declared。我怀疑发生这种情况是因为我可能没有安装文件系统库。

我已经找到了一种修复它的方法,即使用实验性功能并在编译命令中添加一个标志,但我仍然想知道是否有某种方法可以将我的 gcc 包更新为已安装库的包。

我当前的 gcc 版本是 7.5.0。

有什么办法可以做到这一点吗?

答案1

filesystem在 g++-7.5.0 中是实验性的。

您仍然可以使用它,通过将其包含为<experimental/filesystem>(提供命名空间std::experimental::filesystem),并libstdc++fs明确链接(-lstdc++fs在 g++ 命令行上使用),如中所述C++17 中的文件系统

g++-9或者,你可以gcc-10工具链-r PPA

相关内容