Red Hat Bugzilla – Bug 249815
move libgcrypt shared library from /usr/lib to /lib
Last modified: 2007-11-30 17:12:11 EST
+++ This bug was initially created as a clone of Bug #243228 +++
This will break things using /etc/crypttab and a separate /usr
-- Additional comment from firstname.lastname@example.org on 2007-07-26 13:46 EST --
Cryptsetup-luks in Fedora 7 and before were build statically, this changed with
1.0.3-5 in rawhide. I do not know why this changed, but I guess we should either
put the following libraries into /lib
libpopt.so.0 => /usr/lib/libpopt.so.0 (0x0012e000)
libcryptsetup.so.0 => /usr/lib/libcryptsetup.so.0 (0x00136000)
libgcrypt.so.11 => /usr/lib/libgcrypt.so.11 (0x001b5000)
libgpg-error.so.0 => /usr/lib/libgpg-error.so.0 (0x47d8f000)
or go back to building it statically.
This not only breaks existing installations, but also blocks Bug #124789
(encrypted root support).
There was also a bug report for cryptsetup to build it statically: #129926,
which was closed a long time ago.
-- Additional comment from email@example.com on 2007-07-26 18:55 EST --
I commited the necessary changes to cvs to build it statically again, there is a
scratch build available:
-- Additional comment from firstname.lastname@example.org on 2007-07-26 19:42 EST --
Static linking isn't the right answer, though, and is explicitly disallowed per
the packaging guidelines. The fact that it's needed in early boot isn't a
reason to link it statically; instead, it's a reason to get libraries moved to /lib.
-- Additional comment from email@example.com on 2007-07-27 04:52 EST --
(In reply to comment #3)
> Static linking isn't the right answer, though, and is explicitly disallowed per
> the packaging guidelines. The fact that it's needed in early boot isn't a
> reason to link it statically; instead, it's a reason to get libraries moved to
I have commited to cvs a change that moves the cryptsetup libraries to /lib.
Here is a list of the packages that need to move their libraries to /lib:
/usr/lib/libgcrypt.so.11 -> libgcrypt
/usr/lib/libpopt.so.0 -> popt (rpm)
/usr/lib/libgpg-error.so.0 -> libgpg-error
Not directly related, but especially since the lib is now in /lib, wouldn't it
make sense to disable or remove the static libgpg-error.a library?
The shared library's been moved, but nothing else has...?
What I meant is that the packages could stop including the static libraries,
since they're probably not needed by anything anymore. They used to be needed
for statically linking, but since the shared library is now in /lib,
applications which need the library to be available very early in the boot
process should be able to dynamically use it.
Fair enough. Building with --disable-static starting in -3.