12

を使用zypperすると、パッケージ A がパッケージ B に依存するようになります。ただし、知っておく必要があるのは、どのパッケージがパッケージ B に依存するかということです。

逆依存リストを生成する方法はありますか?

4

6 に答える 6

24

次のコマンドを使用して、特定のパッケージを必要とするパッケージを検索 (「se」と省略) できます。

zypper se -- パッケージ名が必要

また、次のコマンドを使用して、インストールされているパッケージのみを検索できます。

zypper se -i -- パッケージ名が必要

たとえば、libpng を必要とするパッケージを探すには:

# zypper se -i --requires libpng
Loading repository data... 
Reading installed packages...
S | Name                        | Summary                                                             | Type   
--+-----------------------------+---------------------------------------------------------------------+--------
i | DirectFB                    | Graphics Library for Framebuffer Devices                            | package
i | MPlayer                     | Multimedia Player                                                   | package
i | cairo-devel                 | Development environment for cairo                                   | package
etc.
于 2015-11-19T11:34:13.650 に答える
1

誰が libpng14 に依存しているか知りたいとしましょう

tcsh で:

zypper search -i | cut -d \| -f 2 | tr -s '\n' ' ' > z.txt
foreach i ( `cat z.txt` )
  zypper info --requires $i |grep libpng14 &&echo $i
end

しばらくすると、次のような結果が得られるようになります。

libpng14.so.14()(64bit)
libpng14.so.14(PNG14_0)(64bit)
DirectFB
libpng14.so.14()(64bit)
libpng14.so.14(PNG14_0)(64bit)
MPlayer

ただし、grep メッセージからパッケージを分離する必要があります。

于 2012-12-31T16:28:18.793 に答える
0

既にインストールされている場合は、rpm --whatrequires を使用できます。

--whatrequires CAPABILITY
        Query all packages that require CAPABILITY for proper functioning.
        Note that this does not return what requires a given package. 

そうでない場合、あなた[私たちは]今のところ運が悪い.

于 2012-09-07T23:52:35.943 に答える
0

Zypper 1.14.33+ に--requires-pkg--requires. 詳しくはこちらをご覧ください。

# zypper se --requires-pkg packagename

# zypper help search | grep -A1 requires-pkg
--requires-pkg          Search for all packages that require any of the provides of the
                        package(s) matched by the input parameters.
于 2021-09-28T13:17:25.440 に答える