diff options
author | Xi Ruoyao <xry111@xry111.site> | 2023-05-27 19:05:06 +0800 |
---|---|---|
committer | Xi Ruoyao <xry111@xry111.site> | 2023-05-27 19:05:06 +0800 |
commit | 55a29ccad28fe8bd4ab53d25ed7a96345aa2f94b (patch) | |
tree | 60c907f57ca469ae21bf9be87cd7bc6581d825e8 | |
parent | 0aba9cbb0cf1377f893cd8040bc7dbd06051522e (diff) |
pkgmgt: Mention the "dependency hell" issue
-rw-r--r-- | chapter08/pkgmgt.xml | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/chapter08/pkgmgt.xml b/chapter08/pkgmgt.xml index 8bf8dfdaa..a5c64f3f6 100644 --- a/chapter08/pkgmgt.xml +++ b/chapter08/pkgmgt.xml @@ -85,6 +85,22 @@ libraries until all the dependent packages have been recompiled.</para> </listitem> + <listitem><para>If a package is (directly or indirectly) linked to + both the old and new names of one shared library (for example, the + package links to both + <filename class='libraryfile'>libfoo.so.2</filename> and + <filename class='libraryfile'>libbar.so.1</filename>, while the latter + links to + <filename class='libraryfile'>libfoo.so.3</filename> in turn), the + package may malfunction because the different names of the shared + library provide incompatible functions with same symbol names. This + can be caused by recompiling some (but not all) packages linked to the + old shared library name after the package providing the shared library + is upgraded. To avoid the issue, it's recommended to recompile every + package linked to a shared library of which the name has been changed + during an upgrade as soon as possible, in their dependency order. + </para></listitem> + <listitem> <para>If a package containing a shared library is updated, and the name of the library doesn't change, but the version number of the library <emphasis role="bold">file</emphasis> decreases (for example, |