I'm using an application that, when searching for installed dependencies, looks up some .so files in /usr/lib and /usr/local/lib/.

Now I migrated on Natty and some files seem to be moved from /usr/lib to /usr/lib/i386-linux-gnu/.

Should I report a bug to that application developers that they should change their lookup logic? Is there a document that explains the change so I can refer it to them?

  • 1
    For whose of you who aren't familiar with Natty or forgot, Natty is Ubuntu 11.04. This change is still present in recent versions of Ubuntu (as of this writing, 18.04).
    – jrh
    Nov 15, 2018 at 18:48

1 Answer 1


This change was made to enable installing versions of the same library compiled for different architectures (e.g. on an AMD64 system, one version might go in /usr/lib/x86_64-linux-gnu while the other goes in i386-linux-gnu).

Both the standard linker and dynamic linker know about these directories, so the change should be invisible for most applications. If the application is searching for actual library files manually, then it will need modification.

Details of the changes to Ubuntu can be found here:


  • 3
    While the Ubuntu link is a decent starting point, a lot more documentation is available from wiki.debian.org/Multiarch (and is also to be expected to be much better kept up to date; the Ubuntu wiki gets about as much love as an abandoned elephant graveyard).
    – tripleee
    Jun 29, 2015 at 7:39
  • 2
    I thought we have /lib32 for multi-arch?
    – Bachsau
    Jan 23, 2017 at 10:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .