kernel compilation problem with linux-2.6.24 vanilla flavor!
Linux - KernelThis forum is for all discussion relating to the Linux kernel.
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.
Distribution: Fedora 10[Cambridge] and Ubuntu 9.04[Jaunty]
Posts: 201
Rep:
kernel compilation problem with linux-2.6.24 vanilla flavor!
Hi All,
M using FC9[with 2.6.25-14.fc9,i686]. I tried to install a new kernel 2.6.24 using the following links: http://searchenterpriselinux.techtar...204148,00.html
and http://www.freeos.com/articles/2589/
so that i can use it to install Xen as the current kernel version doesnot support Xen virtualization..but during compilation it went fine for sometime around 25 mins then it gave me the following error...
kernel/built-in.o: In function `timespec_add_ns':
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
kernel/built-in.o: In function `do_gettimeofday':
/usr/src/linux-2.6.24/kernel/time/timekeeping.c:131: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/kernel/time/timekeeping.c:132: undefined reference to `__umoddi3'
kernel/built-in.o: In function `timespec_add_ns':
/usr/src/linux-2.6.24/include/linux/time.h:174: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
/usr/src/linux-2.6.24/include/linux/time.h:174: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
/usr/src/linux-2.6.24/include/linux/time.h:174: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
make: *** [.tmp_vmlinux1] Error 1
can nyonye please tell me what is the issue...in some of the forums i found that we need some extra pachages to be able to compile a kernel...is it so? if so please point me to some good tutorial that ll resolve my problem...thanx in appreciation...
cat /proc/cpuinfo gives the following:
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Celeron(R) CPU 2.40GHz
stepping : 9
cpu MHz : 2399.815
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up pebs bts cid xtpr
bogomips : 4802.90
clflush size : 64
I read some of the two links you gave, and I found of interest this statement:
"Some Linux guides tell you to run make dep at this point. As of 2.6.x, this step is no longer needed and it does nothing." Some guides still refer to 'make dep'.
It might be of help to us if you list your step by step process. I'll show you the debian way that I use without a hitch (except I'm having issues with USB).
Mine compiles without errors. I do get some warnings though. But the process has been use by others withough any errors. Here is the steps I take. The first step is to get all the tools I need:
1. sudo apt-get install build-essential bin86 kernel-package libqt3-headers libqt3-mt-dev wget libncurses5 libncurses5-dev
2. cd /usr/src
3. sudo -s
===Get the Kernel and extract it
4. wget -c http://kernel.org/pub/linux/kernel/v...6.26.3.tar.bz2
OR www.kernel.org
5. tar -xvjf linux-2.6.26.3.tar.bz2
===Link to Kernel Source
6. rm -rf linux
7. ln -s /usr/src/linux-2.6.26.3 linux
8. cd /usr/src/linux
===GET ".config"
9. cp /boot/config-$(uname -r) .config && yes "" | make oldconfig
===APPLY OPTIONS
10. make xconfig or make menuconfig
===Start the compile process
11. make-kpkg clean
12. time make-kpkg --revision=1custom --initrd kernel_image kernel_headers modules_image|tee MAKE_KPKG_LOG
===Install new Kernel
13. cd .. && dpkg -i linux*2.6.26*.deb
7. ln -s /usr/src/linux-2.6.26.3 linux
8. cd /usr/src/linux
verndog, you don't have to have /usr/src/linux as your anchor. You can put your source anywhere you like and compile it from there. Personally, I use /data/src/<linux-whatever-version>.
7. ln -s /usr/src/linux-2.6.26.3 linux
8. cd /usr/src/linux
verndog, you don't have to have /usr/src/linux as your anchor. You can put your source anywhere you like and compile it from there. Personally, I use /data/src/<linux-whatever-version>.
It depends on what you want to do next.
I think QEMU, for example (KQEMU to be exact), expects
kernel source in the standard place.
7. ln -s /usr/src/linux-2.6.26.3 linux
8. cd /usr/src/linux
verndog, you don't have to have /usr/src/linux as your anchor. You can put your source anywhere you like and compile it from there. Personally, I use /data/src/<linux-whatever-version>.
I'm curious way to took this route? Is it because your afraid of messing up the generic kernels in "/usr/src". I just put my kernel to be compiled in the same place as the just of the bunch. The only thing I thought of doing was linking from desktop to "/usr/src/<kernelsource>"
I'm curious way to took this route? Is it because your afraid of messing up the generic kernels in "/usr/src". I just put my kernel to be compiled in the same place as the just of the bunch. The only thing I thought of doing was linking from desktop to "/usr/src/<kernelsource>"
I leave /usr/src for debian's use. My source, including kernels (and movies, and songs), is on a separate drive: "/data". Even if I break my distro so badly that it must be reloaded, I won't lose any of my sourcecode.
Distribution: Fedora 10[Cambridge] and Ubuntu 9.04[Jaunty]
Posts: 201
Original Poster
Rep:
when I tried to run "sudo make all" ... i got the following erro....ny idea whatz teh issue??? <error snip>:
CC [M] drivers/scsi/advansys.o
drivers/scsi/advansys.c:71:2: warning: #warning this driver is still not properly converted to the DMA API
CC [M] drivers/scsi/BusLogic.o
drivers/scsi/BusLogic.c: In function `BusLogic_ReleaseResources':
drivers/scsi/BusLogic.c:1879: internal compiler error: Segmentation fault
Please submit a full bug report,with preprocessed source if appropriate.See <http://bugzilla.redhat.com/bugzilla> for instructions.The bug is not reproducible, so it is likely a hardware or OS problem.
make[2]: *** [drivers/scsi/BusLogic.o] Error 1
make[1]: *** [drivers/scsi] Error 2
make: *** [drivers] Error 2
[harry@master linux_new]$
when I tried to run "sudo make all" ... i got the following erro....ny idea whatz teh issue??? <error snip>:
CC [M] drivers/scsi/advansys.o
drivers/scsi/advansys.c:71:2: warning: #warning this driver is still not properly converted to the DMA API
CC [M] drivers/scsi/BusLogic.o
drivers/scsi/BusLogic.c: In function `BusLogic_ReleaseResources':
drivers/scsi/BusLogic.c:1879: internal compiler error: Segmentation fault
Please submit a full bug report,with preprocessed source if appropriate.See <http://bugzilla.redhat.com/bugzilla> for instructions.The bug is not reproducible, so it is likely a hardware or OS problem.
make[2]: *** [drivers/scsi/BusLogic.o] Error 1
make[1]: *** [drivers/scsi] Error 2
make: *** [drivers] Error 2
[harry@master linux_new]$
I had something very similar to your seg fault. It never happened before and I used the same ".config", and it started to happen quite often. I was afraid, like the output said , it could be hardware like ram. So I tried the ".config" on an identical pc and it worked find. I re-installed Linux and the problem went away. I was wondering if it was a Gcc update or some library update that caused the problem. I'm still compiling but refused to update until I know what happened.
Distribution: Fedora 10[Cambridge] and Ubuntu 9.04[Jaunty]
Posts: 201
Original Poster
Rep:
Quote:
Originally Posted by verndog
I had something very similar to your seg fault. It never happened before and I used the same ".config", and it started to happen quite often. I was afraid, like the output said , it could be hardware like ram. So I tried the ".config" on an identical pc and it worked find. I re-installed Linux and the problem went away. I was wondering if it was a Gcc update or some library update that caused the problem. I'm still compiling but refused to update until I know what happened.
I must mention one more thing that just two days back i did a complete system update[sudo yum update] and it took a long time as the update was of around 900MB, so i think it must be some problem with some updated version of gcc[as u mentined]but this update solved my problem with VirtualBox, bcoz earlier I was not able to install this to my box[2.6.25-14.fc9.i686]and kernel upgrade to 2.6.26 it installed without ny grin...can nyone point me to the specific tool thats causing the problem in kernel compilation???
@verndog, thanx for ur quick response...
Hi All,
M using FC9[with 2.6.25-14.fc9,i686]. I tried to install a new kernel 2.6.24 using the following links: http://searchenterpriselinux.techtar...204148,00.html
and http://www.freeos.com/articles/2589/
so that i can use it to install Xen as the current kernel version doesnot support Xen virtualization..but during compilation it went fine for sometime around 25 mins then it gave me the following error...
kernel/built-in.o: In function `timespec_add_ns':
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
kernel/built-in.o: In function `do_gettimeofday':
/usr/src/linux-2.6.24/kernel/time/timekeeping.c:131: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/kernel/time/timekeeping.c:132: undefined reference to `__umoddi3'
kernel/built-in.o: In function `timespec_add_ns':
/usr/src/linux-2.6.24/include/linux/time.h:174: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
/usr/src/linux-2.6.24/include/linux/time.h:174: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
/usr/src/linux-2.6.24/include/linux/time.h:174: undefined reference to `__udivdi3'
/usr/src/linux-2.6.24/include/linux/time.h:179: undefined reference to `__umoddi3'
make: *** [.tmp_vmlinux1] Error 1
can nyonye please tell me what is the issue...in some of the forums i found that we need some extra pachages to be able to compile a kernel...is it so? if so please point me to some good tutorial that ll resolve my problem...thanx in appreciation...
cat /proc/cpuinfo gives the following:
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Celeron(R) CPU 2.40GHz
stepping : 9
cpu MHz : 2399.815
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe up pebs bts cid xtpr
bogomips : 4802.90
clflush size : 64
I comiler Linux Kernel on FC9,The Error Messages "undefined reference to `__udivdi3'" ,This error Message ,I think ,is this gcc4.3 version bug???
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.