20

RPMファイルがあります。その RPM にいくつかの変更を加え、再パックしてテストする必要があります。誰でも私を助けることができますか?

4

2 に答える 2

18

ソースがない RPM を変更する最良の方法は、次の手順に従うことです。

  1. rpm2cpioコマンドを使用して、rpm をディレクトリーに解凍します。
  2. そのサブディレクトリ内で必要な変更を行います
  3. 「ダミー」spec ファイルを作成してビルドします。

ダミーの仕様ファイルは次のようになります。

Name: blah
Version: 1.0
Release: 1
Summary: blah
License: blah
Distribution: blah
Group: blah
Packager: me
BuildRoot: /path/to/dir/with/mods

%description
blah

%files
/path/to/dir/with/mods/*

ここにあるすべての「何とか」を実際の値に置き換えます (値を取得するために使用します)。BuildRoot を、変更した rpm をアンラップしたディレクトリに置き換えます。次に実行します。rpm -qpi rpm filerpmbuild -bb dummy.spec

prep/setup/build/install のステップが定義されていないため、buildroot にあるものを取得して RPM を作成するだけです。

rpm パッケージにスクリプト ファイルが含まれている場合は、それらもこのダミーの仕様ファイルに配置する必要があります。パッケージにスクリプトがあるかどうかを確認するには、次を実行します。依存関係、前提条件などについても同じことが言えます。rpm -qp --scripts rpm file

私が見逃している他の詳細があるかもしれませんが、これはあなたが始めるのに十分なはずです.

更新:価値のあるものについては、http://rpmrebuild.sourceforge.net/もあります。

于 2011-06-23T22:19:15.370 に答える
0

それがパッチという概念だと思います。このリンクを使用して、最初の srpm にパッチを適用し始めました。ただし、基本的な考え方は、srpm を取得し、srpm をインストールし、そのビルド領域ディレクトリ内にパッチを作成し、spec ファイルでパッチ ファイル %patch0 -p1 を指定することです。次に、rpm ビルドを実行します。ハッピーパッチ!

于 2011-06-15T08:12:23.543 に答える