如何在ubuntu中安装clang-format

时间:2013-12-24 07:43:47

标签: vim clang code-formatting clang-format

我正在尝试使用clang-tools特别是clang-format在vim中进行自动代码格式化,但是我找不到这个带有apt-get搜索的工具。

之前有没有人遇到过这个问题,你有什么建议吗? 谢谢

6 个答案:

答案 0 :(得分:12)

使用 Ubuntu 16.04 ,只需执行以下操作:

sudo apt install clang-format

答案 1 :(得分:11)

clang-format在ubuntu-precise 12.04中不可用,但在ubuntu中可用 俏皮 http://packages.ubuntu.com/saucy/clang-format-3.4

为了找到带有apt-cache的这个包,我们必须将下面的列表添加到我们的存储库列表中。实际上,以下列表是为新加坡服务器生成的,但如果您想查找自己的国家/地区,可以使用 http://repogen.simplylinux.ch/generate.php

生成列表后,您必须将它们添加到存储库中,您可以通过查看此处了解如何执行此操作。的 https://help.ubuntu.com/community/Repositories/CommandLine

包列表是;

deb http://sg.archive.ubuntu.com/ubuntu/ saucy main restricted universe multiverse 

deb-src http://sg.archive.ubuntu.com/ubuntu/ saucy main restricted universe multiverse 

deb http://sg.archive.ubuntu.com/ubuntu/ saucy-security main restricted universe multiverse 

deb http://sg.archive.ubuntu.com/ubuntu/ saucy-updates main restricted universe multiverse 

deb http://sg.archive.ubuntu.com/ubuntu/ saucy-proposed main restricted universe multiverse 

deb http://sg.archive.ubuntu.com/ubuntu/ saucy-backports main restricted universe    multiverse 

deb-src http://sg.archive.ubuntu.com/ubuntu/ saucy-security main restricted universe multiverse 

deb-src http://sg.archive.ubuntu.com/ubuntu/ saucy-updates main restricted universe multiverse 

deb-src http://sg.archive.ubuntu.com/ubuntu/ saucy-proposed main restricted universe multiverse 

deb-src http://sg.archive.ubuntu.com/ubuntu/ saucy-backports main restricted universe multiverse 

然后你应该先用下面的命令搜索clang-format

  

sudo apt-cache search clang-format

然后,您可以安装要安装的版本,例如;

  

sudo apt-get install clang-format-3.3

答案 2 :(得分:1)

安装

尝试(按此顺序,一次一次,直到一个可行):

sudo apt install clang-format
sudo apt install clang-format-9.0
sudo apt install clang-format-8.0
sudo apt install clang-format-7.0
sudo apt install clang-format-6.0
sudo apt install clang-format-5.0
sudo apt install clang-format-4.0
sudo apt install clang-format-3.6
sudo apt install clang-format-3.4
sudo apt install clang-format-3.0

然后在此答案下方的注释中回答您拥有哪个版本的Linux或Linux Ubuntu,以及哪个命令适用于您。

我:

  

Ubuntu 14.04与sudo apt install clang-format-3.6合作

其他设置和使用信息及资源:

  1. 这是一个git-clang-format python脚本,因此您可以将git clang-format用作git命令:https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/git-clang-format。将其放入您的PATH中;例如:在名为“〜/ bin / git-clang-format”的文件中,并将此文件标记为可执行文件(chmod +x ~/bin/git-clang-format

    • 要调用和使用此文件的git工作流程为:

      git add my_changed_file.c # stage a file
      git clang-format          # let clang-format fix it up (this runs your "~/bin/git-clang-format" Python script)
      git add my_changed_file.c # re-stage it since it's been changed by clang-format
      git commit                # commit the changed file
      
  2. git-clang-format python脚本设置说明:https://dx13.co.uk/articles/2015/4/3/Setting-up-git-clang-format.html
  3. git clang-format的用法和工作流程说明:https://electronjs.org/docs/development/clang-format

答案 3 :(得分:1)

pip3 install clang-format在ubuntu 18.04上为我提供了最新版本9.0,配置为零

答案 4 :(得分:1)

现在,您可以在 Debian/Ubuntu 中直接使用 apt install clang-format 来安装 clang-format。但是,Debian/Ubuntu 提供的 clang-format 已经过时了。例如,来自 Ubuntu 18.04 的 clang-format 的最新版本是 v7,但最新的稳定版本已经达到 v12。您可以按照以下步骤安装最新版本的 clang-format

第 1 步:运行 wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -

第 2 步:根据您的操作系统在 /etc/apt/sources.list 末尾附加以下内容:

  • 巴斯特 (Debian 10):

    deb http://apt.llvm.org/buster/ llvm-toolchain-buster main
    deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster main
    # 11 
    deb http://apt.llvm.org/buster/ llvm-toolchain-buster-11 main
    deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster-11 main
    # 12 
    deb http://apt.llvm.org/buster/ llvm-toolchain-buster-12 main
    deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster-12 main
    
  • 靶心(Debian 11):

    deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main
    deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main
    # 11 
    deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-11 main
    deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-11 main
    # 12 
    deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-12 main
    deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-12 main
    
  • Xenial (Ubuntu 16.04):

    deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial main
    deb-src http://apt.llvm.org/xenial/ llvm-toolchain-xenial main
    # 11
    deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-11 main
    deb-src http://apt.llvm.org/xenial/ llvm-toolchain-xenial-11 main
    # 12
    deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-12 main
    deb-src http://apt.llvm.org/xenial/ llvm-toolchain-xenial-12 main
    
  • 仿生 (Ubuntu 18.04):

    deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main
    deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic main
    # 11
    deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main
    deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main
    # 12
    deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main
    deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main
    

如果您的操作系统不在此列表中,您可以检查 https://apt.llvm.org/

第 3 步:运行 sudo apt update

第 4 步:运行 apt search clang-format 并检查所有可用版本:

$ sudo apt search clang-format
Sorting... Done
Full Text Search... Done
arcanist-clang-format-linter/stable 0.git20161021-2 all
  clang-format linter for Arcanist

clang-format/unknown 1:13.0-53~20210202214848.38 amd64
  Tool to format C/C++/Obj-C code

clang-format-11/unknown 1:11.1.0~++20210203115409+1fdec59bffc1-1~exp1~20210203230038.161 amd64
  Tool to format C/C++/Obj-C code

clang-format-12/unknown 1:12.0.0~++20210312110334+ca14f0282fce-1~exp1~20210312221110.59 amd64
  Tool to format C/C++/Obj-C code

clang-format-13/unknown 1:13~++20210315063844+b868a3edad9d-1~exp1~20210315174553.2286 amd64
  Tool to format C/C++/Obj-C code

clang-format-6.0/stable 1:6.0.1-10 amd64
  Tool to format C/C++/Obj-C code

clang-format-7/stable 1:7.0.1-8+deb10u2 amd64
  Tool to format C/C++/Obj-C code

第 5 步:使用 apt install 安装您想要的 clang-format。然后您可以使用 --version 检查已安装的 clang-format。您可以在同一环境中安装多个版本的 clang-format

$ sudo apt install -y clang-format-12
$ clang-format-12 --version
Ubuntu clang-format version 12.0.0-++20210312110334+ca14f0282fce-1~exp1~20210312221110.59

$ sudo apt install -y clang-format
$ clang-format --version
Ubuntu clang-format version 13.0.0-++20210315063844+b868a3edad9d-1~exp1~20210315174553.2286

答案 5 :(得分:0)

只需使用以下命令:

sudo apt-get install clang-format

它可以在ubuntu16.04中运行(安装setup clang-format-3.8(1:3.8-2ubuntu4))

当我尝试

sudo apt-cache search clang-format
# it return 
clang-format - Tool to format C/C++/Obj-C code
clang-format-3.5 - Tool to format C/C++/Obj-C code
clang-format-3.6 - Tool to format C/C++/Obj-C code
clang-format-3.7 - Tool to format C/C++/Obj-C code
clang-format-3.8 - Tool to format C/C++/Obj-C code
clang-format-3.9 - Tool to format C/C++/Obj-C code
clang-format-4.0 - Tool to format C/C++/Obj-C code
clang-format-5.0 - Tool to format C/C++/Obj-C code
clang-format-6.0 - Tool to format C/C++/Obj-C code
clang-format-8 - Tool to format C/C++/Obj-C code

然后尝试

sudo apt-get install clang-format-8

ENV中没有命令clang格式