# Kernel Compileing Questions

## dman777

I plan on using the gentoo-source kernel and I will use genkernel to compile it. I have a few questions I was wondering if anyone could answer, please:

1). I have a dual core system. Will it automatically detect it and set the Symmetric multi-processing support?

2). Will it automatically compile the NTFS-3G driver with it?

3). Will it compile the necessary driver/module to be able to start a virtual machine for Virtual Box?

----------

## mark_alec

Moved from Installing Gentoo to Kernel & Hardware.

----------

## didymos

Genkernel is kind of pointless if you ask me.  Just emerge gentoo-sources, run make menuconfig, configure everything to your liking, and do:

```

make all modules_install install

```

Then just set the kernel in grub.conf to "/vmlinuz".  Next time you update the kernel, it automatically backs up the previous one and creates a symlink to it: vmlinuz.old.  Add a second grub entry for that and you can easily revert to the last working kernel if something breaks.

Anyway, by itself, genkernel will just go with the current config, but often you have to adjust things anyway since options get added, dropped, and renamed as the kernel progresses.  The solution: tell genkernel you want to do a menuconfig via a command line option.  Wow, what a timesaver.  If you're using a boot splash theme, genkernel is moderately convenient, but you can just use the tools that come with splashutils yourself, since genkernel basically just acts a front-end to those too.

----------

## schachti

 *dman777 wrote:*   

> 2). Will it automatically compile the NTFS-3G driver with it?
> 
> 3). Will it compile the necessary driver/module to be able to start a virtual machine for Virtual Box?

 

This has nothing to do with the kernel - these are standalone packages that are not included in the kernel, so just emerge them by hand.

----------

## dman777

Are you sure? Someone told me I need to enable FUSE in the kernel to use NTFS-3G. If this is true, would it be enabled automatically in genkernel? 

I know if I don't use genkernel I'm going to forget something because I'm not that experienced with it. What should I do?

----------

## Jaglover

 *Quote:*   

> I know if I don't use genkernel I'm going to forget something because I'm not that experienced with it. What should I do?

  Configure, build, install, configure, build, install ... experience is not sold in Wal-Mart.

FUSE is filesystem in userspace, you need it if you want to use external drivers.

----------

## billydv

You can enable fuse in the kernel when you compile your kernel.  If  its  compiled  in  or  was  compiled  as  a  module  with  your  kernel,  when  you  emerge  fuse  it  will  tell  you  its  skipping the  kernel  part  because  its  already  built  in.

----------

## djinnZ

 *dman777 wrote:*   

> 1). I have a dual core system. Will it automatically detect it and set the Symmetric multi-processing support?

 no, you need to use genkernel with the --menuconfig option (or you can edit the /etc/genkernel.conf file to have on default the menu or to not launch a make mproper and so other) to select the correct processor type, genkernel will only insert a generical configuration to easy refine it, the simmetric multiprocessing support is added by default but is an intel pentium II o something so, I not remember esactly. Do a look to the genkernel documentation.

 *dman777 wrote:*   

> 2). Will it automatically compile the NTFS-3G driver with it?
> 
> 3). Will it compile the necessary driver/module to be able to start a virtual machine for Virtual Box?

 no, but you can use sys-kernel/module-rebuild

In fact I like to use genkernel because there is nothing to learn in repeating the same operations every time I must recompile the kernel. Better simply launch a 

```
module-rebuild populate ; genkernel kernel ; module-rebuild rebuild
```

 as I start to use a new kernel version or a 

```
genkernel --noclean kernel ; module-rebuild rebuild
```

 as I need only to change the configuration, obliviously my genkernel is configured to start automatically the menuconfig.

ntfs-3g has his own version of fuse module included (needed to work with old kernels) so if you are not compiled it and is not the standalone fuse installed will be added automatically to the modules.

If you are using a kernel version >= 2.6.21 is better to use the kernel fuse builtin IMHO.

----------

## billydv

Dman,  you  are  a  bit  new  to  this  so  let  me  give  you  some  newbie  advice  with  regards  to  genkernel.  For  starters  here  is  the  command  to  build  a  kernel  and  initramfs.  This  assumes  that  you  will  use  the  lovely  gentoo  framebuffer  splash  and  uvesafb.  Packages  that  must  be  emerged  prior  to  this  are  splashutils (media/gfx),  splash-themes-gentoo (media/gfx),  genkernel,  gentoo-sources,  klibc (dev/libs),  and  v86d.  There  is  a  read  up  on  the  uvesafb  at  http://dev.gentoo.org/~spock/projects/uvesafb/ and  the  fbsplash  at  http://fbsplash.berlios.de/wiki/doku.php?id=docs:distros:gentoo  and  http://dev.gentoo.org/~spock/projects/fbcondecor/

genkernel --menuconfig --install kernel --splash=livecd-2007.0 initrd

Prior  to  running  this  in  terminal  but  after  emerging  above  packages  be  sure  to  set  the  symlink  to  your  newest  gentoo  sources  by  running  eselect kernel list  and  then  eselect  kernel set (the number shown in previous command)

This  will  now  give  you  a  kernel  config  menu

This  website  will  give  you  some  help  in  choosing   things

http://ubuntuforums.org/showpost.php?p=1174954&postcount=507

press  esc  twice  and  enter  and  your  kernel  will  build

after  its  done  in  /boot  you  will  find  kernel,  initramfs,  and  system  map,  rename  them  like  in  my  grub  entry  below  (remove  the  genkernel  part)  and  you  then  must  emerge  things  like  nvidia-drivers,  ati-drivers,  vmware  modules  and  fuse.

title Gentoo X86 2.6.24-gentoo-r3

        root (hd1,2)

        kernel /boot/kernel-2.6.24-gentoo-r3 pci=nommconf root=/dev/ram0 init=/linuxrc ramdisk_size=8192 real_root=/dev/sda3 quiet splash=silent,fadein,fadeout,theme:livecd-2007.0 video=uvesafb:1024x768-32,mtrr:3,ywrap console=tty1

        initrd /boot/initramfs-2.6.24-gentoo-r3

----------

