SRPMを解凍、修正、再構築、インストールする方法

SRPMを解凍、修正、再構築、インストールする方法

Fedora 15パッケージ()を修正したいですgnome-shell-extensions-alternative-status-menu。これは若干の修正です(復元今回提出してください)。 ()を使ってyumdownloaderSRPMをダウンロードできますgnome-shell-extensions-3.0.2-1.g63dd27cgit.fc15.src.rpm

その後、解凍して再構築するにはどうすればよいですか?

答え1

ROOTユーザーとして何をすべきですか?

  1. 他のパッケージと同様に、SRPMのインストール(rpm --install [source-rpm-filename]

  2. ディレクトリを確認/root/rpmbuild/SPECSし、パッケージに一致する仕様ファイルを見つけます。

  3. rpmbuild -bb /root/rpmbuild/SPECS/[found-filename]

結果のバイナリパッケージは、/root/rpmbuild/RPMS/標準コマンドでインストールする準備が整ったディレクトリにありますrpm --install

メモ:これが標準のバイナリパッケージに含まれています。ソースコードを変更して新しいパッケージを生成するのではなく、特定の質問に答えるためにこの記事を投稿してください。

修正するには、パッチを入力として提供し、SPECSファイルを変更するか、見つかった*.tar.bz2標準を自分の変更に置き換え/root/rpmbuild/SOURCESてから上記のようにビルドできます。

SPECSパッケージが機能するように変更する必要があります(通常はパッチを削除し、SPECSファイルにプログラムされたいくつかのファイル名を変更します)。


編集する

rpmをrootとして構築するのは悪い習慣のようです(源泉)。ルート以外のユーザーとしては正常に動作します。

パッチを追加するためのステップバイステップのガイドライン(ここ):

  1. パッチをにコピーしますrpmbuild/SOURCES
  2. rpmbuild/SPECS/package.spec行の後ろにPatch0: mypatch.patch右側を編集して追加しますSource0: ...
  3. この%setup ...行の後に%patch0 -p1行を追加してください。

これで正常にビルドされます。そして:rpmbuild -ba SPECS/package.spec

答え2

OpenSSLパッケージの再構築CentOS 6.4SRPM パッケージの再構成の詳細な例です。

上記の例では笑い- パッケージビルダーのジェダイ光線剣。

モックは、chroot を確実に入力し、その chroot からパッケージを再構築するために作成されます。

詳細については、次を参照してください。http://fedoraproject.org/wiki/Projects/Mock

例では、mockを3回使用しました。一度は、パッケージを「圧縮解除」してから.src.rpmを再構築し、最後に.rpmを生成するために使用されました。

関連情報