如何在 Fedora 27 上仅安装和使用 Clang-Format?

How to install and use just Clang-Format on Fedora 27?

我正在尝试了解如何安装 stand alone Clang-Format 工具。

我已经从 official download page 为我的 OS (Fedora 27) 下载了 Clang 的预构建二进制文件。

但是我没弄清楚如何运行这个工具。

上面的文档说 clang-format 位于 clang/tools/clang-format 但是下载的文件中不存在这样的路径。

我在整个下载目录中搜索了 'format',并在 /bin/ 目录中找到了 'clang-format' 可执行文件。

然而,当我尝试从终端 运行 它时,如下所示: ./clang-format

终端说: bash: ./clang-format: No such file or directory

(我已经更改了文件权限以允许执行)

我也研究过从源代码构建 clang-format,但我没有找到如何在没有任何其他 clang 添加的情况下单独构建 clang-format 的说明。

将不胜感激。谢谢!

额外安装 clang-tools:

sudo dnf install clang-tools-extra

对于 Fedora < 32,您只需要安装 clang,它已经捆绑了 clang-format 工具。

sudo dnf install clang

如果你想找到 clang-format.You 的位置可以使用 locate.

locate clang-format

Fed34,这太无聊了。 我已经安装了 clang llvm clang-format

如果我尝试 运行 它在一个文件上,它有一个转储:

 #0 0x00007f3309b543f6 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/lib64/libLLVM-12.so+0xc063f6)
 #1 0x00007f3309b522e4 llvm::sys::RunSignalHandlers() (/lib64/libLLVM-12.so+0xc042e4)
 #2 0x00007f3309b52466 (/lib64/libLLVM-12.so+0xc04466)
 #3 0x00007f3308b9d320 __restore_rt (/lib64/libc.so.6+0x3d320)
 #4 0x00007f330f3fbdb4 clang::DiagnosticIDs::ProcessDiag(clang::DiagnosticsEngine&) const (/lib64/libclang-cpp.so.12+0x8e5db4)
 #5 0x00007f330f3f44bb clang::DiagnosticsEngine::EmitCurrentDiagnostic(bool) (/lib64/libclang-cpp.so.12+0x8de4bb)
 #6 0x00007f331078436c clang::Rewriter::overwriteChangedFiles() (/lib64/libclang-cpp.so.12+0x1c6e36c)
 #7 0x00005634ae4d6e1e (/usr/bin/clang-format+0xee1e)
 #8 0x00005634ae4cfed8 (/usr/bin/clang-format+0x7ed8)
 #9 0x00007f3308b87b75 __libc_start_main (/lib64/libc.so.6+0x27b75)
#10 0x00005634ae4d019e (/usr/bin/clang-format+0x819e)
Segmentation fault (core dumped)