From: Simon Stelling <blubb@gentoo.org>
To: gentoo-amd64@lists.gentoo.org
Subject: Re: [gentoo-amd64] file type not allowed in /usr/lib
Date: Sun, 07 Aug 2005 12:18:57 +0200 [thread overview]
Message-ID: <42F5E011.8020907@gentoo.org> (raw)
In-Reply-To: <42F53B6D.1080908@burnieanglican.org.au>
Hi,
Will Briggs wrote:
> !!! ERROR: media-gfx/skencil-0.6.16 failed.
> !!! Function dyn_install, Line 1114, Exitcode 0
> !!! File
> /var/tmp/portage/skencil-0.6.16/image///usr/lib/skencil-0.6.16/Lib/paxtkinter.so
> matches a file type that is not allowed in /usr/lib
> !!! If you need support, post the topmost build error, NOT this status
> message.
This means that there are 64bit shared objects going to /usr/lib instead
of /usr/lib64, which is wrong, but currently not really a bug, since
/usr/lib is a link to /usr/lib64.
> So if anyone can help with a fix, please let me know.
Just remove 'multilib-strict' from your FEATURES.
> The _question_ relates to the fact that I've seen this sort of error a
> number of times, but by the time I come across it it's been bugged and
> fixed and the next emerge sync fixes it. Can someone let me know what
> the issue is here - (mainly so I can get a handle on hacking my own
> fixes when bug reports go unanswered) Why can't a .so file be placed in
> /usr/lib?
It can, but it shouldn't. We want 64bit .sos to go to (/usr)/lib64 and
32bit to (/usr)/lib32, because *taking a deep breath*:
Generally, we want to provide a fully multilib-capable system. That
means that you will be able to compile every application for 32bit or
64bit, depending on your mood ;). 32bit applications require 32bit
libraries, otherwise they can't be linked against each other, same
(obviously) for 64bit apps/libs. Now imagine you want appfoo (32bit) and
appbar (64bit), both depending on libfoobar. So you need libfoobar twice
-- once 64bit and once 32bit.
Now, if libfoobar would get installed to /usr/lib instead /usr/lib32 and
/usr/lib64, it'd obviously overwrite itself. Depending on what you
install first, appfoo or appbar will break, as they both require
installing libfoobar. Also, if you would emerge -C appfoo && emerge
depclean, appbar wouldn't work anymore, because they both provide
exactly the same files.
The simple solution to this is making two directories and making sure
that no 64bit shared object goes anywhere else than to (/usr)/lib64, and
vice versa.
Regards,
--
Simon Stelling
Gentoo/AMD64 Operational Co-Lead
blubb@gentoo.org
--
gentoo-amd64@gentoo.org mailing list
next prev parent reply other threads:[~2005-08-07 10:19 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-06 22:36 [gentoo-amd64] file type not allowed in /usr/lib Will Briggs
2005-08-07 10:18 ` Simon Stelling [this message]
2005-08-08 2:23 ` Will Briggs
2005-08-07 13:18 ` [gentoo-amd64] " Duncan
2005-08-07 20:13 ` Simon Stelling
2005-08-08 9:17 ` Simon Stelling
2005-08-08 15:40 ` [gentoo-amd64] " Duncan
2005-08-08 19:20 ` Simon Stelling
2005-08-08 23:04 ` Matt Randolph
2005-08-09 0:33 ` Matt Randolph
2005-08-09 16:48 ` [gentoo-amd64] " Duncan
2005-08-09 18:48 ` Duncan
2005-08-10 13:12 ` Simon Stelling
2005-08-10 19:53 ` [gentoo-amd64] " Duncan
2005-08-09 8:05 ` [gentoo-amd64] " Jeremy Huddleston
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=42F5E011.8020907@gentoo.org \
--to=blubb@gentoo.org \
--cc=gentoo-amd64@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox