Ubuntu システムに rpmrebuild-2.11-3.el7.noarch.rpm をインストールする方法

Ubuntu システムに rpmrebuild-2.11-3.el7.noarch.rpm をインストールする方法

以下のコマンドを使用して rpmrebuild をインストールしようとしました:

rpm -ivh rpmrebuild-2.11-3.el7.noarch.rpm

しかし、以下のエラーで失敗します: エラー:

Failed dependencies:
        /bin/bash is needed by rpmrebuild-2.11-3.el7.noarch
        /bin/sh is needed by rpmrebuild-2.11-3.el7.noarch
        rpm-build is needed by rpmrebuild-2.11-3.el7.noarch
        textutils is needed by rpmrebuild-2.11-3.el7.noarch

答え1

tar.gz をダウンロードし、展開して make を呼び出して /usr/lib/rpmrebuild の下にインストールします。

mkdir /tmp/rpmrebuild &&\
cp rpmrebuild-2.14.tar.gz /tmp/rpmrebuild/ &&\
cd /tmp/rpmrebuild/ &&\
tar xvfz rpmrebuild-2.14.tar.gz &&\
sudo make &&\
sudo make install

答え2

Debian ベースの OS (Ubuntu など) に rpm をインストールするのが良い考えかどうかという疑問の他に、rpm は依存関係を管理しません。同様に、dpkgこれも実行されません。したがって、2 つのオプションがあります。

  1. オンラインで検索し、必要な rpm をダウンロードしたことを確認します (この場合は bash*.rpm、rpm-build*.rpm、coreutils*.rpm など)。インストール時に、コマンド ラインでこれらすべてを一度に指定する必要があります。rpm -ivh rpmrebuild-2.11-3.el7.noarch.rpm bash*.rpm rpm-build*.rpm coreutils*.rpm
  2. パッケージマネージャを使用する。またはzypperyum使用するリポジトリここで、必要なパッケージが検索され、インストールされます。繰り返しますが、Ubuntu でこれがどのように機能するかはわかりません。

答え3

rpm -ivh --nodeps rpmrebuild-2.11-3.el7.noarch.rpm

依存関係がすでにネイティブにインストールされていることを前提としています。

Ubuntu で Linux 向けアプリケーションを開発しているときに、機能的な rpm 4.4 パッケージを作成する際にいくつかの問題に遭遇しました。rpm再構築その問題の解決に役立ちます。私はシステムのメンテナンスに rpm ツールは使用していません。パッケージ/ソース自体とのやり取りにのみ使用しています ;)

答え4

rpm オプションを試してみるといいでしょう--nodeps。これにより、rpm は不足している依存関係を無視するようになります。その後は、自分でインストールする必要があります。/bin/bash と /bin/sh はすでに配置されているはずです (ただし、Ubuntu では /bin/sh が dash を指していると問題が発生する可能性があります)。rpm がすでにインストールされている場合は、rpm-build を無視できると思います。

$ rpm-build
No command 'rpm-build' found, did you mean:
 Command 'rpmbuild' from package 'rpm' (universe)
rpm-build: command not found

textutils が何をカバーしているかはわかりません。 Centos リポジトリからそのパッケージを取得して解凍してみてください。 (やり方は Google で検索してください。cpio とパイプに関係があります。) これらのファイルは、すでに Ubuntu インストールの一部になっているのではないかと思います。

幸運を祈りますが、細心の注意を払って進めてください。他の人が指摘しているように、Ubuntu システムに rpm を混在させると問題が発生する可能性があります。

関連情報