5

Archlinux 用户使用 Emacs 作为 C++ IDE,设置如下:company/flycheck/lsp-ui/ccls

我正在尝试使用filesystemc++17 中的库供个人使用,但我无法摆脱 Emacs 中的这个错误

ccls : no member named 'filesystem' in namespace 'std'

我的问题的快速示例

#include <iostream>
#include <filesystem>

int main(int argc, char** argv) {
   std::filesystem::path filePath("./sample.cpp");
   std::cout << filePath.filename() < std::endl;
   return 0;
}

使用此命令编译和运行时完全没问题:

clang++ -std=c++17 sample.cpp

输出 :"sample.cpp"

但是 Emacs 中仍然存在“错误”,这有点烦人。我尝试添加.ccls具有以下内容的文件,但这并不能解决问题。

clang++
%cpp -std=c++17        ; Also tried with gnu++17

这里是问题的截图。我猜第一个错误是错误的,cout因为filePath总的来说一切都很好

截屏

有谁知道如何解决这个问题?

4

0 回答 0