GentooThis forum is for the discussion of Gentoo Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I am tring to install gentoo 3.2.1-gentoo-r2 and i have problem with my kernel.
When i execute this command: time make -j2 i have this error
usr/initramfs_data.S:1:0: error: CPU you selected does not support x86-64 instruction set
I have tried all the processor families but i have the same error
I have pentium r cpu
Here is my cpu:
Code:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Pentium(R) CPU E5200 @ 2.50GHz
stepping : 10
cpu MHz : 2499.598
cache size : 2048 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni monitor tm2 ssse3 lahf_lm dts
bogomips : 4999.19
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Pentium(R) CPU E5200 @ 2.50GHz
stepping : 10
cpu MHz : 2499.598
cache size : 2048 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni monitor tm2 ssse3 lahf_lm dts
bogomips : 4999.63
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Either select a proper processor family under "Processor Type and Features" in kernel config (you could use generic x86-64) or post the config you're trying to compile that kernel with so we could see what may be the problem.
Are you using a source tree that you previously used in some other architecture? This can happen sometimes when you've used x86 on a 64 bits cpu, and later you decide to migrate.
Leftovers could be cleaned up with "make clean", or more in depth, with "make mrproper", but that will erase your .config file as well, so be sure to back it up. If you want to use it, in any case, make sure you use "make oldconfig" after putting it back after the cleaning, to fix any inconsistency.
If that's not it, I would erase the whole tree, and redownload and install it again. Of course, always save your .config if you tuned it yourself. Otherwise, just use genkernel.
Settings in make.conf only are only for portage. Just invoking "make" in command line won't source that file. So, the CFLAGS in there are really not relevant (and that error message has nothing to do with them anyway).
This is what I do know, I can download a kernel from kernel.org and place it in puppylinux run make menuconfig and get every processor from i386 to the 64 bit processors, take the same clean kernel put it on slackware64 or any other 64bit system and only get options for 64bit processors. So if the op has a 32bit processor and only getting options for 64bit processors then the options for processor has to be determined by something external to the kernel itself such as a make configuration file of some sort. When initially installing gentoo the type of arch installing on is set in the /etc/make file, so was thinking that might be the problem.
Last edited by colorpurple21859; 03-09-2012 at 01:43 PM.
This is what I do know, I can download a kernel from kernel.org and place it in puppylinux run make menuconfig and get every processor from i386 to the 64 bit processors, take the same clean kernel put it on slackware64 or any other 64bit system and only get options for 64bit processors. So if the op has a 32bit processor and only getting options for 64bit processors then the options for processor has to be determined by something external to the kernel itself such as a make configuration file of some sort. When initially installing gentoo the type of arch installing on is set in the /etc/make file, so was thinking that might be the problem.
Part of the purpose of running make menuconfig is configuring the source tree, before compiling it. If you have already ran menuconfig in another box then the source tree is at least partly configured for that cpu, which can result in odd things when you move the configured tree to another architecture (even if it's just from x86 to amd64 in the same box). The kind of message s/he's getting there often appears in such kind of scenario.
Of course, it could also be just regular file system corruption, or a manually messed .config file. I can't be sure.
Are you installing Gentoo or is this a running installation and is it 32bit or 64bit. If this an installation gone wrong, what is your host system 32bit or 64bit. I can some sort of duplicate the error the op is getting by using
Quote:
linux32 make menuconfig
and the
Quote:
make -j2
on a 64bit host machine. But not sure how this helps or will help someone else figure out what is wrong
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
#detailed example.
CFLAGS="-02 -march=i686 -pipe"
CXXFLAGS="${CFLAGS}"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="i686-pc-linux-gnu"
But, as the output in your first post shows, your kernel sources are at least partly configured for x86_64. I already told you above the reasons why this can happen, and the procedures on how to fix this. You could also just try "make oldconfig". The script might or might not work depending on what the exact problem is. In any case, if it doesn, it will probably ask you a few things so it can configure your kernel properly.
But, as the output in your first post shows, your kernel sources are at least partly configured for x86_64. I already told you above the reasons why this can happen, and the procedures on how to fix this. You could also just try "make oldconfig". The script might or might not work depending on what the exact problem is. In any case, if it doesn, it will probably ask you a few things so it can configure your kernel properly.
Hey look i am not good at linux
Could you tell me exactly what i have to do???
Did you use genkernel as suggested in the handbook, or are you using some other method? Did you configure it by hand or did you copy it from some other installation? Is Gentoo already installed or are you still in the trance of installing it?
Did you use genkernel as suggested in the handbook, or are you using some other method? Did you configure it by hand or did you copy it from some other installation? Is Gentoo already installed or are you still in the trance of installing it?
And you configured the kernel using the text based menus of menuconfig, right?
Quote:
I have downloaded this gentoo architecture amd64!!!
That architecture is ok for your cpu, as long as you want to use a 64 bits OS (you could also use the 32 bits version). In any case, the sources are exactly the same, no matter what architecture you are using. And the configure script should present you with the right options, so something is wrong with that.
What I'd do, is the following.
First, erase the whole kernel tree. If you did the chroot step, that should usually be /usr/src/linux.
Then, install the sources again. That'd be:
Code:
emerge gentoo-sources
Proceed again to configure your kernel from the ground using menuconfig, as per the guide you linked in your post above.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.