[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: /usr/lib64 or /usr/lib

On 2011-06-11 09:22 +0200, Goswin von Brederlow wrote:

> Except for how dpkg behaves. If your package has a file in /usr/lib64/
> and gets installed then dpkg records that that directory belongs to your
> package. Then the next time libc6 gets updated dpkg will try to unpack
> the /usr/lib64 symlink and fail because you can not replace a directory
> of another package with a symlink.

Er no, this is not how dpkg behaves.  It never converts symlinks to
directories or vice versa, so the actual outcome is¹ that your file gets
actually installed into /usr/lib through the symlink.  This means that
if another package starts shipping a file with the same name in
/usr/lib, dpkg will not notice the file conflict which is bad.

It's much worse if you ship files in /lib64, because if your package is
installed into a chroot and unpacked by the host dpkg with the --root=…
option, the files end up in the host system².


¹ Unless your package is unpacked before libc6 while bootstrapping a
  system, but that's highly unlikely.
² http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=514702

Reply to: