View previous topic :: View next topic |
Author |
Message |
ackward Apprentice
Joined: 06 Sep 2002 Posts: 192
|
Posted: Wed Jan 02, 2008 2:31 pm Post subject: |
|
|
loftwyr wrote: | You may need to go to /usr/bin and delete all the files starting with i686. You shouldn't have them but eselect compiler screwed you over. |
Thank you, that worked! It was driving me mad. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
|
Back to top |
|
|
pajamabama n00b
Joined: 19 Jan 2007 Posts: 21 Location: In another time's forgotten space
|
Posted: Fri Jan 11, 2008 6:00 am Post subject: |
|
|
Can someone explain why this solution works? The removal of i686 things from bin? Like some others on the thread, I've found that it works, but I'm not really comfortable deleting stuff from /usr/bin, mostly because I don't really know what they are. Which set of executables is it supposed to be using if not the 686 ones?
I'd just like to understand what I did and why it worked. Thanks
EDIT:
Right, I saw above. It should be using the x86_64 bins. That makes sense. _________________ HP Pavilion dv6000t
Intel Centrino Duo 2.0GHz
nVidia GeForce Go 7400
Sabayon Linux 5.2 x64
----------------------
The real question is what time is it and why the hell am I still screwing around with my computer? |
|
Back to top |
|
|
angelos Retired Dev
Joined: 31 Aug 2006 Posts: 14
|
Posted: Tue Jan 22, 2008 2:41 pm Post subject: |
|
|
ok, to summarize this for everyone and maybe clarify a bit:
Code: | error: cannot run C compiled programs. |
-> enable CONFIG_IA32_EMULATION in your kernel
Code: | error: C compiler cannot create executables |
-> rm /usr/bin/i686-pc-linux-gnu-*
You have to delete those because they're broken links most likely created by eselect-compiler.
Then I've read something about an emerge wrapper and that uname -m has to display i686, this is not true. sandbox is built as 64bit and 32bit on a multilib system, uname -m has to be x86_64 in both cases and the 64bit gcc is used in both cases (using -m32 to build the 32bit version). fix_libtool.sh and revdep-rebuild won't help here. |
|
Back to top |
|
|
Shingoshi Tux's lil' helper
Joined: 18 Jan 2007 Posts: 128 Location: Salem, Oregon USA
|
Posted: Wed Feb 06, 2008 4:48 am Post subject: Sandbox crashing "emerge portage" |
|
|
eyoung100 wrote: | Sorry about the signature problem. (I had left off a 4) It's fixed.
Have you tried what the emerge suggests?
Code: | FEATURES=-sandbox emerge sandbox |
|
Forgive me for being out of the loop! But since I am brand new to Gentoo, and there is NO statement about where to change this "FEATURES=-sandbox emerge sandbox", I keep getting the same problem. I tried changing this in /etc/make.conf, but nothing is working.
And let me point out, that if I have correctly place that line in /etc/make.conf, your mentioning it here, as it is in the output from the terminal, doesn't include the required parenthesis. Not using them causes the system to fail.
I too am erroneously getting this ABI=32, which immediately struck me as odd, since I am running 64bit.
Shingoshi _________________ The immediate equalization of all knowledge among all beings.
Xneutato - The Cluster-Distributed Package Development and Management Framework
http://portato.origo.ethz.ch/forum/23
Shingoshi's User Styles for Firefox
http://userstyles.org/users/3665 |
|
Back to top |
|
|
Loibisch Tux's lil' helper
Joined: 03 Jan 2006 Posts: 89
|
Posted: Fri Feb 08, 2008 6:29 pm Post subject: |
|
|
You just enter it on the command line as it is...don't add it to make.conf |
|
Back to top |
|
|
Holysword l33t
Joined: 19 Nov 2006 Posts: 946 Location: Greece
|
Posted: Sat Feb 16, 2008 3:07 pm Post subject: |
|
|
I got the same problem, and non of the posted solutions did worked.
One thing that no one has mentioned (and I dunno if its a normal thing) is that when I try to emerge gcc with a
USE="multilib" emerge gcc
It does not enable multilib use flag ( it keeps as (-multilib) no matter what I do ). Is that right?? _________________ "Nolite arbitrari quia venerim mittere pacem in terram non veni pacem mittere sed gladium" (Yeshua Ha Mashiach) |
|
Back to top |
|
|
eelke Guru
Joined: 17 May 2004 Posts: 406 Location: Earth, Netherlands, Friesland
|
Posted: Sat Mar 29, 2008 6:56 am Post subject: |
|
|
I think I have discovered what is really going on. When you install an amd64 system the default profile is a multilib profile. For a multilib setup you should have IA32 executable support in your kernel. If you want to have a pure 64-bit system you have forgotten to change your profile during installation. To select the right profile do:
Code: | ln -snf /usr/portage/profiles/default-linux/amd64/2007.0/no-multilib /etc/make.profile |
|
|
Back to top |
|
|
anstein n00b
Joined: 14 Nov 2010 Posts: 1
|
Posted: Sun Nov 14, 2010 7:55 pm Post subject: |
|
|
Had the same problem with sandbox after doing a (required) emerge -e world:
error: cannot run C compiled programs.
It took some time to sort this out. Actually some package seems to dislike the softlink from /lib to /lib64 and replaces it with a real directory, so the root directory did look something like:
/lib
/lib32
/lib64
instead of:
/lib -> lib64
/lib32
/lib64
This causes all sorts of problems as the 32 bit run time linker is actually stored in /lib64, searched at runtime in /lib, ...
After merging the contents of /lib to /lib64 and restoring the soft link from lib to lib64 the sandbox emerge went smoothly. |
|
Back to top |
|
|
|