build erros with multiarch changes in 12.04

Josh Stratton strattonbrazil at gmail.com
Tue May 15 16:25:37 UTC 2012


I recently upgraded to 12.04 and noticed that apparently do to the new
multiarch changes, there are now two lib directories on my machine:
/usr/lib and /usr/lib/i386-linux-gnu.  When trying to compile an app I
had been working on using qmake, it no longer picks up several of the
libraries in /usr/lib since qmake now pulls from
/usr/lib/i386-linux-gnu.  I have 1400 library files in the former and
1100 in the latter.  When do I pull from one or the other?

I know the basic idea of why Ubuntu decided to do this, but I'm more
curious as to what they expect people to do about it since now a lot
of builds out there besides mine, I'm assuming, are going to break
because they only pull from one library path.  In my case when I run
qmake, I have a -L/usr/lib/i386-linux-gnu (same path I see when I run
qmake --version) and it ignores all the files in /usr/lib like
libassimp.so.

I can link this library file (and any others I come across) into
/usr/lib/i386-linux-gnu or hardcode /usr/lib into my qmake builds,
which I didn't have to do before.  I'm just wondering how other Ubuntu
users are dealing with this as it seems almost every build
configuration I usually download assumes one library path.  What does
Ubuntu expect developers to do in this case to elegantly handle both
directories?

Thanks, Josh




More information about the ubuntu-users mailing list