I am a newbie when comes to compiling linux kernel so I search the net for it, but it came out so many ways:
make menuconfig or xconfig or gconfig
make bzImage
make modules
make modules_install
make menuconfig or xconfig or gconfig
make dep
make
make modules
make modules_install
make bzImage
make install
make menuconfig or xconfig or gconfig
make modules
make modules_install
make mrproper
make menuconfig or xconfig or gconfig
make
make modules_install
make install
and in the kernel readme file:
make menuconfig or xconfig or gconfig
make
make install
make modules_install
So which one is the right one? Do all of them do the same thing?
Compiling kernel 2.6.7 question.
-
Avatar Viper
- Member
- Posts: 29
- Joined: Wed Jan 21, 2004 1:21 am
- Location: Singapore
Wrong answer! That's the 2.4 way. They rebuilt the build system for the 2.6 kernel. You just need to do:Paft wrote:ALWAYS do a "make mrproper". Read this link:
http://lfs.osuosl.org/lfs/view/stable/c ... ernel.html
make menuconfig or xconfig or gconfig or config or oldconfig
make && make modules_install
Then copy your files over to /boot and step up your bootloader (or if you are running lilo you can just do `make install`).
This interests me. Got a link to a Linux-dev thread/site where I can find some verification?Stu wrote:Wrong answer! That's the 2.4 way. They rebuilt the build system for the 2.6 kernel. You just need to do:
make menuconfig or xconfig or gconfig or config or oldconfig
make && make modules_install
Then copy your files over to /boot and step up your bootloader (or if you are running lilo you can just do `make install`).
Would love to move to a 2.6.x kernel, just don't seem to have the balls to do it yet.
And PLEASE tell me we've removed those godforsaken symlinks?
So trade that typical for something colorful, and if it's crazy live a little crazy!
[quote="Paft"]This interests me. Got a link to a Linux-dev thread/site where I can find some verification?
Would love to move to a 2.6.x kernel, just don't seem to have the balls to do it yet. ]
Although it's a little old, you can read the post-halloween document ( http://www.linux.org.uk/~davej/docs/pos ... en-2.6.txt ) that Dave Jones (one of the 2.6 kernel developers) wrote when the 2.6.0-test kernels came out (he kept it current until 2.6.0 was released as stable). It briefly describes new features, quirks, and stuff that is incomplete in the 2.6.0 kernel.
As for moving to 2.6 from 2.4, it's fairly simple (I moved to it around 2.6.0-test8 or 2.6.0-test9, I forget which). Make sure all the software meets the "Current Minimal Requirements" in Documentation/Changes, install module-init-tools ( http://www.kernel.org/pub/linux/kernel/ ... y/modules/ ; they re-did the module loader, and it's backwards compatible--so, you can run 2.4 and 2.6 on the same machine), make a /sys directory (it uses sysfs instead of /proc, but you can compile it to use both), make <the config you prefer>, make && make modules_install, make symlinks from /usr/src/linux-2.6.x to both /usr/src/linux and /usr/src/linux-beta (some software that compiles differently based on whether you are using the 2.4 or 2.6 kernel, like device drivers that aren't part of the kernel tree, use this to figure out if you are running the 2.6 kernel), then install it and configure your bootloader.
Of course, it might not be as straightforward as that depending on your distro. I use Gentoo and it took about 20 mins to switch using the process I described above. If you are running a Red Hat based distro (like Mandrake) you can check out these to links from more relevent info on upgrading to 2.6:
http://thomer.com/linux/migrate-to-2.6.html
http://www.fearthecow.net/index.pl?sect ... age=kernel
As stevebakh said, it is faster. They rewrote a bunch of stuff--like the process scheduler, the I/O scheduler, the block-layer, the IDE subsystem (no need for SCSI emulation with CD/DVD burners anymore), and replaced LinuxThreads with the Native POSIX Threading Library, to name a few of the major things. And the build system is really nice. Not only did they simplify the way you build it, but the re-did all the menus in a logical way--which makes it easier to find things. Also, you don't have to watch all the compiler commands when you make it, it just outputs what it's doing to what file. Something like this:
CC this.c
AS this.s
LD this.o
You'd have a tough time getting me to switch back to the 2.4 kernel after using the 2.6 for a while!
Would love to move to a 2.6.x kernel, just don't seem to have the balls to do it yet. ]
Although it's a little old, you can read the post-halloween document ( http://www.linux.org.uk/~davej/docs/pos ... en-2.6.txt ) that Dave Jones (one of the 2.6 kernel developers) wrote when the 2.6.0-test kernels came out (he kept it current until 2.6.0 was released as stable). It briefly describes new features, quirks, and stuff that is incomplete in the 2.6.0 kernel.
As for moving to 2.6 from 2.4, it's fairly simple (I moved to it around 2.6.0-test8 or 2.6.0-test9, I forget which). Make sure all the software meets the "Current Minimal Requirements" in Documentation/Changes, install module-init-tools ( http://www.kernel.org/pub/linux/kernel/ ... y/modules/ ; they re-did the module loader, and it's backwards compatible--so, you can run 2.4 and 2.6 on the same machine), make a /sys directory (it uses sysfs instead of /proc, but you can compile it to use both), make <the config you prefer>, make && make modules_install, make symlinks from /usr/src/linux-2.6.x to both /usr/src/linux and /usr/src/linux-beta (some software that compiles differently based on whether you are using the 2.4 or 2.6 kernel, like device drivers that aren't part of the kernel tree, use this to figure out if you are running the 2.6 kernel), then install it and configure your bootloader.
Of course, it might not be as straightforward as that depending on your distro. I use Gentoo and it took about 20 mins to switch using the process I described above. If you are running a Red Hat based distro (like Mandrake) you can check out these to links from more relevent info on upgrading to 2.6:
http://thomer.com/linux/migrate-to-2.6.html
http://www.fearthecow.net/index.pl?sect ... age=kernel
As stevebakh said, it is faster. They rewrote a bunch of stuff--like the process scheduler, the I/O scheduler, the block-layer, the IDE subsystem (no need for SCSI emulation with CD/DVD burners anymore), and replaced LinuxThreads with the Native POSIX Threading Library, to name a few of the major things. And the build system is really nice. Not only did they simplify the way you build it, but the re-did all the menus in a logical way--which makes it easier to find things. Also, you don't have to watch all the compiler commands when you make it, it just outputs what it's doing to what file. Something like this:
CC this.c
AS this.s
LD this.o
You'd have a tough time getting me to switch back to the 2.4 kernel after using the 2.6 for a while!
What about the fact that I complied glibc against 2.4.x and if I move the 2.6.x headers in, it might break? Have you experienced any of that?Stu wrote:make symlinks from /usr/src/linux-2.6.x to both /usr/src/linux and /usr/src/linux-beta
So trade that typical for something colorful, and if it's crazy live a little crazy!
Shouldn't be a problem... Paft. 
The symlinks are just a really useful feature that do have a good use. If MS were smart, they would implement something like symlinks (shortcuts are completely different).
With the kernel though, I guess you don't need to use symlinks, you could always just plank the source dir for the kernel at /usr/src/linux rather than making a symlink to point there. Your choice though.
The symlinks are just a really useful feature that do have a good use. If MS were smart, they would implement something like symlinks (shortcuts are completely different).
With the kernel though, I guess you don't need to use symlinks, you could always just plank the source dir for the kernel at /usr/src/linux rather than making a symlink to point there. Your choice though.