web-dev-qa-db-ja.com

CentOS 7にClangとLLVM 3.9をインストールする方法

https://copr-be.cloud.fedoraproject.org/results/alonid/llvm-3.9.0/epel-7-x86_64/00505197-clang-3.9.0/ からrpmパッケージを取得しました= Clang 3.9の場合。

コマンドでrpmパッケージをインストールしています

rpm -ivh clang-3.9.0-3.9.0-3.1.el7.centos.alonid.src.rpm

しかし、私がするとき

rpm -ivh clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64.rpm

次のエラーが表示されます。

error: Failed dependencies:
    clang-3.9.0-libs(x86-64) = 3.9.0-3.1.el7.centos.alonid is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libLLVM-3.9.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclang.so.3.9()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangAST.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangBasic.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangCodeGen.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangDriver.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangFormat.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangFrontend.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangFrontendTool.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangIndex.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangRewrite.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangRewriteFrontend.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangStaticAnalyzerFrontend.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangTooling.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64
    libclangToolingCore.so()(64bit) is needed by clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64

これらすべての依存関係はどこからインストールすればよいですか?

11
Seetu Agarwal

SCLリポジトリを有効にすると、 llvm-toolset-7 パッケージを使用して、CentOS 7にClang 5.0.1をインストールできます。

$ Sudo yum install centos-release-scl
$ Sudo yum install llvm-toolset-7

llvm-toolset-7を有効にします:

$ scl enable llvm-toolset-7 bash

次のコマンドでclangのバージョンを確認できます。

$ clang --version

詳細については、こちらをご覧ください Red Hatブログ投稿 .

SCLの詳細については、 このページ を参照してください。

28
phoenix

これを実現するはるかに簡単な方法がありました。

Alonidのリポジトリを/etc/yum.repos.d/epel.repoに追加します(epelリポジトリがインストールされていると仮定)

echo "[alonid-llvm-3.9.0]
name=Copr repo for llvm-3.9.0 owned by alonid
baseurl=https://copr-be.cloud.fedoraproject.org/results/alonid/llvm-
3.9.0/epel-7-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/alonid/llvm-
3.9.0/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1" >> /etc/yum.repos.d/epel.repo

それからSudo yum install clang-3.9.0

6
Andy Mo

私はあなたが言及したRPMリポジトリの著者です。

リポジトリのメインCoprページからフォローします。

https://copr.fedorainfracloud.org/coprs/alonid/llvm-3.9.0/

ご質問があれば、そこから私に連絡することができます。ありがとう!

6
Dan Aloni

Red Hatは完全なインストールプロセスを提供しています。 Red Hatドキュメント を参照してください。

1
Esmaeil MIRZAEE

リンク を開いて見回すだけでなく、1レベル上に移動し、必要な.rpmをすべて見つけます。次のシーケンスは私のために働いた:

yum install compiler-rt-3.9.0-3.9.0-3.el7.centos.alonid.x86_64.rpm
yum install clang-3.9.0-libs-3.9.0-3.1.el7.centos.alonid.x86_64.rpm
yum install clang-3.9.0-3.9.0-3.1.el7.centos.alonid.x86_64.rpm
yum install llvm-3.9.0-libs-3.9.0-7.el7.centos.alonid.x86_64.rpm
yum install llvm-3.9.0-3.9.0-7.el7.centos.alonid.x86_64.rpm
yum install llvm-3.9.0-devel-3.9.0-7.el7.centos.alonid.x86_64.rpm

フラグなしでyum installを実行するだけで、ClangとLLVMが/opt/llvm-3.9.0にインストールされます。

$ ls -l /opt/llvm-3.9.0 
total 12
drwxr-xr-x 2 root root 4096 Jun  3 23:48 bin
drwxr-xr-x 3 root root 4096 Jun  3 23:23 include
drwxr-xr-x 3 root root 4096 Jun  3 23:27 lib64

また、-devel-static-debuginfoなどの他のパッケージがあることに注意してください。

便利なヒント:-develパッケージをインストールしないと、lib64のような実行可能ファイルとbin/clangのようなライブラリのみが配置されたbinおよびlib64/libLLVM-3.9.0.soフォルダーのみを取得できます。 LLVM/Clangで何かを開発したい場合は、対応する-develパッケージが必要になります。次に、ヘッダー付きのinclude/フォルダーも取得します。

ところで、このレポのメンテナーに感謝します。 LLVM 3.9がすぐに使用できるのは素晴らしいことです。

1