Summary: | Portage on AMD64 doesn't install 32bit sandbox | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Karsten Becker <karstenrbecker> |
Component: | New packages | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED DUPLICATE | ||
Severity: | major | CC: | amd64, eradicator, gentoo, lares.moreau |
Priority: | High | ||
Version: | 2004.3 | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Karsten Becker
2005-02-19 03:20:33 UTC
Workaround: 1. Unpack a stage3-tarball, for example into /stage3. 2. Copy '/stage3/emul/linux/x86/lib32/libsandbox.so' to /lib32, rename it to 'libsandbox32.so'. 3. Create a symlink in '/usr/x86_64-pc-linux-gnu/lib', pointing to '/lib32/libsandbox32.so'. If '/usr/x86_64-pc-linux-gnu/lib' doesn't exist, create it. gcc will compile. ----- The problem is not alone that libsandbox32.so is not copied to /lib32, but also that gcc-3.4.3-r1, when it tries to build the 'libstdc++-v3'-part, doesn't look in /lib32, but in '/usr/x86_64-pc-linux-gnu/lib'. You can see it in the output of Bug 82027: ... /var/tmp/portage/gcc-3.4.3-r1/work/build/gcc/xgcc -B/var/tmp/portage/gcc-3.4.3-r1/work/build/gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -m32 checking for C compiler default output... a.out checking whether the C compiler works... configure: error: cannot run C compiled programs. ... ----- So first portage must copy the libsandbox32.so to somewhere, I assume that should be /lib32. Then there are two possibilities: Either... ...portage creates a symlink in '/usr/x86_64-pc-linux-gnu/lib/' to the libsandbox32.so... ...or... ...the config of gcc must be changed to also take a look in /lib32. Correction: It doesn't work if you call the lib 'libsandbox32.so'. It only works with a '/lib32/libsandbox.so' and a symlink in '/usr/x86_64-pc-linux-gnu/lib', pointing to '/lib32/libsandbox.so'. The symlink itself must also be called 'libsandbox.so'. Sorry for that. |