yumパッケージを削除し、ソースから同じパッケージの将来のバージョンをインストールしました。しかし、Yumはそれを見ませんでした。 yumパッケージをインストールしようとするたびに、古いyumパッケージをインストールしようとしますが、私がインストールしたソースパッケージは表示されません。
yumがソースパッケージを表示できるようにする方法はありますか?ソースからrpmを生成する方法がまだわからないことに注意してください。
答え1
残念ながら(幸いにも?)rpmはdebと同等の機能を持っていません。equivs-build
「ローカルにインストールされたパッケージと、その依存関係についてdpkgに通知するために使用できるDebianパッケージを生成するプログラムです。」
空のrpmを集めてインストールして、rpmにパッケージがインストールされたことを知らせるのは簡単です(ただし、システムに追加されたファイルをインストールするようにソースに通知するわけではありません)。
最初はフッ素PM:
$ fpm -s empty -t rpm -n foo -v 1.2.3 --iteration noop
後でこのパスを使用したい場合、fpmはrpm構築プロセスを簡素化できます。
二つ目はRPM毛羽:
$ python
>>> import rpmfluff
>>> foo = rpmfluff.SimpleRpmBuild("foo", "0.1", "1")
>>> foo.make()
インクルードファイルの実際のrpmを作成するための別の簡単なオプション(例:fpm)は次のとおりです。インストールの確認。 (今も動作するかどうかわかりません。)
./configure;プログラムを作成した後、CheckInstallはmake install(または実行するように指示されたすべての項目)を実行し、このインストールで変更されたすべてのファイルを追跡します... make installが完了すると、CheckInstallはSlackware、RPM、またはDebianの互換性を生成します。必要に応じて、Slackwareのinstallpkg、「rpm -i」、またはDebianの「dpkg -i」を使用してパッケージ化してインストールします。
答え2
回答を詳しく説明します。
yum
デフォルトでは、リモートリポジトリからクエリおよびインストールでき、パッケージとその依存関係を正しい順序で手動でインストールしなくても依存関係をクエリrpm
および解決できるという点でフロントエンドです。rpm
他にもありますが、これが最も重要です。
したがって、ディレクトリにあるデータベースと関連ファイルをyum
使用してください。このデータベースは、パッケージがインストール、削除、削除されると更新されます。ソフトウェアがソースコードからコンパイルされるか、バイナリ、ライブラリ、ヘッダなどを生成するスクリプトを介してインストールまたはインストールされるなど、他のユーティリティを使用して過データベースrpm
/var/lib/rpm
snap
pip
cpan
gem
yum
rpm
これがyum
ソースでコンパイルされたソフトウェアを見ることができない理由です。