From: "W. Trevor King" <[email protected]>
This gives users a heads up explaining why they might see linking
errors when pkgcache is enabled. I first saw this when I build a
stage1 without update_seed. Because my seed stage3 linked against
libmpc.so.2, some of my stage1 files linked against the older mpc.
However, the mpc-1.0.1 built for the stage1 installed libmpc.so.3.
When I tried to use this stage1 to build a stage2, it died with:
/usr/libexec/gcc/i686-pc-linux-gnu/4.6.3/cc1:
error while loading shared libraries: libmpc.so.2:
cannot open shared object file: No such file or directory
To fix this, I enabled update_seed, but binary packages built during
my first pass were used to populate the stage1, so even though I'd
updated the seed stage3 toolchain, I still had a stage1 with cc1
linked against libmpc.so.2.
After clearing the binary package cache, I got a stage1 *built* with
the updated seed stage3, which gave a cc1 linked against libmpc.so.3
(hurray!).
This commit adds a warning in the pkgcache documentation that should
help people understand what might be going wrong if they see similar
linking errors. For more details, see the thread following
http://thread.gmane.org/gmane.linux.gentoo.catalyst/2137/focus=2193
---
files/catalyst.conf | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/files/catalyst.conf b/files/catalyst.conf
index b74c546..e285e4f 100644
--- a/files/catalyst.conf
+++ b/files/catalyst.conf
@@ -58,7 +58,11 @@ hash_function="crc32"
# kerncache = keeps a tbz2 of your built kernel and modules (useful if your
# build stops in livecd-stage2)
# pkgcache = keeps a tbz2 of every built package (useful if your build stops
-# prematurely)
+# prematurely. However, you may see linking problems if the binary
+# package was built against an older version of a runtime dependency
+# and the package in question is not using EAPI5's sub-slots. For
+# further discussion, see
+# http://article.gmane.org/gmane.linux.gentoo.catalyst/2224)
# seedcache = use the build output of a previous target if it exists to speed
up
# the copy
# snapcache = cache the snapshot so that it can be bind-mounted into the
chroot.
--
1.8.2