[Pkg-ia32-libs-maintainers] /lib32 -> emul/ia32-linux/lib ?
Goswin von Brederlow
goswin-v-b at web.de
Mon Nov 2 15:33:07 UTC 2009
Philipp Matthias Hahn <pmhahn at debian.org> writes:
> Hello,
>
> I'm running "Debian sid" on "x86_64" and tried to build a "google-earth"
> package today, which failed with
> dpkg-shlibdeps: error: no dependency information found for /emul/ia32-linux/lib/libm.so.6 (used by ../usr/lib/googleearth/liblayer.so).
>
> After some investigation into bi-arch and multi-arch I discovered that I
> have the following directory structure:
> /emul/ia32-linux/lib
> /emul/ia32-linux/usr/lib
> /lib
> /lib32 -> emul/ia32-linux/lib
> /lib64 -> lib
> /usr/lib
> /usr/lib32
> /usr/lib64 -> lib
>
> Looking at "/var/lib/dpkg/info/libc6-i386.preinst" I found the following
> fishy line:
> if [ "$(readlink /lib32)" = "/emul/ia32-linux/lib" ]; then
> ^ notice that my symlink does not
> have the leading slash!
> rm /lib32
>
> Since I don't remeber ever creating that symlink myself and also found
> no definite answer to my question on how a "right" directory layout
> should look like, I'd like to ask first before filing a possible bug on
> "libc6-i386" because of that to restrictive test.
>
> Sincerely
> Philipp Hahn
The expected layout in squeeze/sid is (at least it is here)
/lib
/lib32
/lib64 -> /lib
/usr/lib
/usr/lib32
/usr/lib64 -> lib
I don't understand why your links are different but libc6-i386 should
really cope with that. So go ahead and file a bug.
As for fixing it you need to remove the link and reinstall every
package that has files in /lib32. Then check if any package has files
left in /emul/ia32-linux/ and update/remove them before removing what
remains of /emul/ia32-linux/.
MfG
Goswin
More information about the Pkg-ia32-libs-maintainers
mailing list