環境
OSバージョン
$ cat /etc/system-release
Amazon Linux AMI release 2016.03
デフォルトでのantバージョン
$ yum list ant
読み込んだプラグイン:priorities, update-motd, upgrade-helper
amzn-updates/latest/primary_db | 879 kB 00:00
利用可能なパッケージ
ant.noarch 1.8.3-1.13.amzn1 amzn-main
1.8なので1.9のrpmを探して入れることに
rpmの検索
RPM Searchで ant-1.9
で検索
CentOSは7が対応。試してみる。
(AmazonLinuxはユーザーランドはCentOS5/6)
rpmをインストール
$ sudo rpm -ivh ftp://ftp.muug.mb.ca/mirror/centos/7.2.1511/os/x86_64/Packages/ant-1.9.2-9.el7.noarcch.rpm
ftp://ftp.muug.mb.ca/mirror/centos/7.2.1511/os/x86_64/Packages/ant-1.9.2-9.el7.noarch.rpm を取得中
警告: /var/tmp/rpm-tmp.xZkluI: ヘッダー V3 RSA/SHA256 Signature、鍵 ID f4a80eb5: NOKEY
エラー: 依存性の欠如:
python は ant-0:1.9.2-9.el7.noarch に必要とされています
pythonが足りない。
$ rpm -qa | grep python
python27-boto-2.39.0-1.0.amzn1.noarch
python27-imaging-1.1.6-19.9.amzn1.x86_64
python27-markupsafe-0.11-4.6.amzn1.x86_64
python27-jinja2-2.7.2-2.15.amzn1.noarch
python27は入ってたけど。
必要なパッケージを確認
依存しているパッケージ情報を表示するコマンド取得
rpm手動インストール時の依存性の欠如パッケージ一覧を簡易表示する君作った
$ git clone https://github.com/tukiyo/yum_whatprovides_listup.git
Cloning into 'yum_whatprovides_listup'...
remote: Counting objects: 8, done.
remote: Total 8 (delta 0), reused 0 (delta 0), pack-reused 8
Unpacking objects: 12% (1/8) Unpacking objects: 25% (2/8) Unpacking objects: 37% (3/8) Unpacking objects: 50% (4/8) Unpacking objects: 62% (5/8) Unpacking objects: 75% (6/8) Unpacking objects: 87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
Checking connectivity... done.
依存関係確認
$sudo ./yum_whatprovides_listup rpm -ivh ftp://ftp.muug.mb.ca/mirror/centos/ 7.2.1511/os/x86_64/Packages/ant-1.9.2-9.el7.noarch.rpm
python26
python26がリポジトリに存在するか確認
$ yum list python26
読み込んだプラグイン:priorities, update-motd, upgrade-helper
10 packages excluded due to repository priority protections
利用可能なパッケージ
python26.x86_64 2.6.9-2.86.amzn1 amzn-updates
python26をインストール
$ sudo yum install python26
読み込んだプラグイン:priorities, update-motd, upgrade-helper
amzn-main/latest | 2.1 kB 00:00
amzn-updates/latest | 2.3 kB 00:00
10 packages excluded due to repository priority protections
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ python26.x86_64 0:2.6.9-2.86.amzn1 を インストール
--> 依存性の処理をしています: libpython2.6.so.1.0()(64bit) のパッケージ: python26-2.6.9-2.86.amzn1.x86_64
--> トランザクションの確認を実行しています。
---> パッケージ python26-libs.x86_64 0:2.6.9-2.86.amzn1 を インストール
--> 依存性解決を終了しました。
依存性を解決しました
===============================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
===============================================================================================================================
インストール中:
python26 x86_64 2.6.9-2.86.amzn1 amzn-updates 5.8 M
依存性関連でのインストールをします:
python26-libs x86_64 2.6.9-2.86.amzn1 amzn-updates 697 k
トランザクションの要約
===============================================================================================================================
インストール 1 パッケージ (+1 個の依存関係のパッケージ)
総ダウンロード容量: 6.4 M
インストール容量: 21 M
Is this ok [y/d/N]: y
Downloading packages:
再度antをインストール
sudo rpm -ivh ftp://ftp.muug.mb.ca/mirror/centos/7.2.1511/os/x86_64/Packagess/ant-1.9.2-9.el7.noarch.rpm
ftp://ftp.muug.mb.ca/mirror/centos/7.2.1511/os/x86_64/Packages/ant-1.9.2-9.el7.noarch.rpm を取得中
警告: /var/tmp/rpm-tmp.tCspZT: ヘッダー V3 RSA/SHA256 Signature、鍵 ID f4a80eb5: NOKEY
準備しています...
更新中 / インストール中...
1:ant-0:1.9.2-9.el7