如何在没有root权限且没有安装LLVM的情况下安装clang-format?

时间:2018-05-29 14:00:24

标签: clang-format

我在没有root权限的Fedora机器上的clang-format version 3.8.0 (tags/RELEASE_380/final)文件夹中有~/bin。它有效,但它很老,我想升级。我只想要clang格式工具,所以如果我能避免它,我想避免经历LLVM或clang的完整安装过程。我认为我可以避免它,因为我的旧clang-format可以在没有安装任何一个的情况下工作。我不记得我的~/bin目录中的clang格式是如何得到的,我无法弄清楚如何更新它。

我尝试的第一件事就是关注this post,它说我应该可以从this page下载预建的二进制文件(我试过http://releases.llvm.org/6.0.0/clang+llvm-6.0.0-x86_64-linux-gnu-Fedora27.tar.xz),然后设置一个符号链接到{ {1}}。这不适合我。当我输入bin/clang-format时,我收到错误/path/to/bin/clang-format --help

我接下来尝试的是下载clang源代码并使用

进行编译
error while loading shared libraries: libtinfo.so.6: cannot open shared object file: No such file or directory

但是当我犯了错误时

mkdir build && cd build && CC=$(which gcc) CXX=$(which g++) cmake ..

我想这意味着我需要安装LLVM才能走这条路?

任何帮助获得更新的clang格式(至少是vesion 5.0)没有root访问权限将不胜感激。最小安装的奖励积分(即没有铿锵声或llvm)。

===编辑===

通过下载一堆不同版本的预建二进制文件,我发现旧版本(< 4.0)的CMake Error at CMakeLists.txt:36 (message): llvm-config not found -- LLVM_CONFIG-NOTFOUND 开箱即用,但4.0及以上版本相同关于clang-format的错误。我想这意味着除非我想经历一个痛苦的安装过程,否则我将不得不使用旧版本。

1 个答案:

答案 0 :(得分:0)

下载llvm 6.0时,请确保目录结构如下:

  

LLVM    | - >工具      | ----->铛               | ---->工具                        | ---->额外

     

如果您只想构建clang-format,则可以cd进入

llvm-build-dir/tools/clang/tools/extra/clang-format然后执行make -j8 all

稍后您可以在/bin文件夹

中创建符号链接