首页 > 编程语言 >C++ | filesystem file not found

C++ | filesystem file not found

时间:2024-04-02 09:59:44浏览次数:24  
标签:libstd fs lib c++ C++ file filesystem found include

1.filesystem使用过程中遇到的错误

如果你用的GCC版本<GCC8.0,则直接#include<filesystem>会报错,说找不到文件

No such file or directory

对于这种情况,可以如下操作。如果是GCC8.0+ 和C++17以上,则只需要#include<filesystem>

①改include路径

#include <experimental/filesystem>

using fs=std::experimental::filesystem;

②找到filesystem的库

$ locate libstdc++fs.a
/usr/lib/gcc/x86_64-linux-gnu/7/libstdc++fs.a  

其中,/usr/lib/gcc/x86_64-linux-gnu/7/libstdc++fs.a是我系统里的位置

③将库的位置添加到CMakeLists.txt的库链接部分

target_link_libraries(${PROJECT_NAME} /usr/lib/gcc/x86_64-linux-gnu/7/libstdc++fs.a)

理论上,直接把库拿出来,放在项目里,链接项目的lib,应该也可行,未尝试。

2.filesystem的使用

参考资料:c++ filesystem 用法

参考资料讲得挺好,我主要用来检查文件夹是否存在,以及创建文件夹,很方便。

标签:libstd,fs,lib,c++,C++,file,filesystem,found,include
From: https://blog.csdn.net/weixin_66442839/article/details/137131317

相关文章

  • C++ list
    文章目录list的介绍及使用list的介绍list的构造listiterator的使用listcapacitylistelementaccesslistmodifierslist模拟实现list节点类list迭代器类list类list深度剖析list迭代器失效list反向迭代器list与vector对比list的介绍及使用list的介绍1.list的底......
  • C++ 数学函数、头文件及布尔类型详解
    C++数学C++有许多函数可以让您在数字上执行数学任务。最大值和最小值max(x,y)函数可用于找到x和y的最大值:示例cout<<max(5,10);而min(x,y)函数可用于找到x和y的最小值:示例cout<<min(5,10);C++<cmath>头文件其他函数,例如sqrt(平方根)、round(四舍......
  • Ubuntu20.04如何永久修改同一时间打开文件数上限以及解决Too many open files问题
       近期遇到一个问题,写的代码同一时间维护的tcp链接过多,导致linux的文件句柄达到上限,出现Toomanyopenfiles的问题。网上大多回答混乱,在这里做个总结,提醒日后使用。1.查看命令ulimit-a2.临时的修改,关闭终端失效ulimit-n204800或ulimit-SHn204800  //S代......
  • C++命名空间详解
    在C/C++中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。#include<st......
  • C++从入门到精通——auto的使用
    auto前言一、auto类型别名思考二、auto简介三、auto的使用细则auto与指针和引用结合起来使用在同一行定义多个变量auto不能推导的场景auto不能作为函数的参数auto不能直接用来声明数组`lambda`表达式前言C++的auto关键字用于自动推导变量的类型,让编译器根据变量的......
  • C++基础夯实
     std::copystd::searchstd::back_inserterstd::equalmemcpy演示如何使用std::copy、std::search、std::back_inserter std::equal这四个方法。我们假设有两个向量,一个源向量source,一个目标向量destination。我们将首先使用std::copy方法将源向量中的元素复制......
  • 初探c++:string类的进阶运用
    1.begin()和end(),前一个指向字符串的第一个字符,第二个指向字符串的\0 strings=("helloworld"); string::iteratorit=s.begin(); while(it!=s.end()) { cout<<*it<<""; ++it; } cout<<endl;这是正向迭代器的经典应用如果要实现反向迭代器,就......
  • C++基础——选择结构与循环结构
    基础:选择语句☑️❌if语句if(a){//a判断表达式,如果a为真那就执行语句}if语句还可以与else结合使用if(a){//a判断表达式,如果a为真那就执行语句}elseif(b){//如果a为假,b为真那就执行语句}else{如果a和b都为假,那就执行该语句}swi......
  • 从基础入门到学穿C++(类和对象篇)【超详细】【一站式速通】
    类和对象C语言是一种面向过程的语言,C++和python、java一样都是一种面向对象的语言。面向对象编程(Object-OrientedProgramming,OOP)和面向过程编程(ProceduralProgramming)是两种不同的编程范式面向对象编程:强调的是将现实世界中的事物抽象成对象,并通过对象之间的交互来实现......
  • kkFileView是什么?提供最新版本免费下载(4.4.0)
    1、kkFileView是什么?文档在线预览项目解决方案,项目使用流行的springboot搭建,易上手和部署。万能的文件预览开源项目,基本支持主流文档格式预览2、项目特性1、使用springboot开发,预览服务搭建部署非常简便2、rest接口提供服务,跨平台特性(java,php,python,go,php,....)都支持,......