I haven't been able to recompile Centos' default kernel on 4.2, nor on 4.3 on an x86_64
The process fails with two different problems:
1. 'cannot find -lqt' error
2. offset.h.tmp missing
Kind of weird not being able to recompile an integral part of the system on a system which is entirely based on recompilation.
Based on second hand reports vanila kernel seems to compile o.k., but I don't want to go vanila if I don't have to.
Bogdan Nicolescu wrote:
I haven't been able to recompile Centos' default kernel on 4.2, nor on 4.3 on an x86_64
The process fails with two different problems:
'cannot find -lqt' error
offset.h.tmp missing
Kind of weird not being able to recompile an integral part of the system on a system which is entirely based on recompilation.
Based on second hand reports vanila kernel seems to compile o.k., but I don't want to go vanila if I don't have to.
All released CentOS kernels are built on CentOS itself. What version are you trying to build ?
--- Karanbir Singh mail-lists@karan.org wrote:
I haven't been able to recompile Centos' default
kernel on 4.2, nor on
4.3 on an x86_64
The process fails with two different problems:
'cannot find -lqt' error
offset.h.tmp missing
Kind of weird not being able to recompile an
integral part of the system
on a system which is entirely based on
recompilation.
Based on second hand reports vanila kernel seems
to compile o.k., but I
don't want to go vanila if I don't have to.
All released CentOS kernels are built on CentOS itself. What version are you trying to build ?
I'm trying to compile the default, 'regular', x86_64 kernel the one that comes with 4.3 in a Centos 4.3 x86_64 environment containig strictly default Centos 4.3 packages.
Of not too much to ask, the annaconda file of a Centos x86_64 environment that will built Centos kernel for the x86_64 will be greatly appreciated.
Bogdan Nicolescu wrote:
I'm trying to compile the default, 'regular', x86_64 kernel the one that comes with 4.3 in a Centos 4.3 x86_64 environment containig strictly default Centos 4.3 packages.
well, 2.6.9-34.EL is the kernel version included in 4.3 and i can confirm it builds fine on a centos 4.3/x86_64 machine running 2.6.9-34.EL
Of not too much to ask, the annaconda file of a Centos x86_64 environment that will built Centos kernel for the x86_64 will be greatly appreciated.
anaconda has nothing to do with rpm or the build process. so i have no idea what you are talking about.
--- Karanbir Singh mail-lists@karan.org wrote:
I'm trying to compile the default, 'regular',
x86_64
kernel the one that comes with 4.3 in a Centos 4.3 x86_64 environment containig strictly default
Centos
4.3 packages.
well, 2.6.9-34.EL is the kernel version included in 4.3 and i can confirm it builds fine on a centos 4.3/x86_64 machine running 2.6.9-34.EL
Of not too much to ask, the annaconda file of a
Centos
x86_64 environment that will built Centos kernel
for
the x86_64 will be greatly appreciated.
anaconda has nothing to do with rpm or the build process. so i have no idea what you are talking about.
-- Karanbir Singh : http://www.karan.org/ : 2522219@icq
I can confirm that it doesn't build. One more person can confirm the same thing. The same exact kernel compilation errors were in Centos 4.2. Thread on Centos forum discussing the problem:
http://www.centos.org/modules/newbb/viewtopic.php?topic_id=3519&forum=34
An anaconda file would provide the EXACT environment on two different machines. Right now the problem is in the "you say it works, and I say it doesn't work" stage.
Right now you:
well, 2.6.9-34.EL is the kernel version included in 4.3 and i can confirm it builds fine on a centos 4.3/x86_64 machine running 2.6.9-34.EL
I say:
On Centos installation (no non Centos packages installed) on an x86_64, Cento's kernel 2.6.9-34.EL fails to compiles. See http://www.centos.org/modules/newbb/viewtopic.php?topic_id=3519&forum=34 on how it fails.
Either you are right and I'm wrong, or you are wrong and I'm right. I can provide you with the environemnt (anaconda file)where the kernel fails to compile. Can you provide the environment (anaconda file) where the kenrel can be compiled?
TIA
Bogdan Nicolescu wrote:
I can confirm that it doesn't build. One more person can confirm the same thing. The same exact kernel compilation errors were in Centos 4.2. Thread on Centos forum discussing the problem:
http://www.centos.org/modules/newbb/viewtopic.php?topic_id=3519&forum=34
An anaconda file would provide the EXACT environment on two different machines. Right now the problem is in the "you say it works, and I say it doesn't work" stage.
install a 64bit clean machine, install everything. thats how the centos buildsystems are setup.
I know it builds because the kernel in the distro is the one that i built!
setup a userlevel rpmroot, install the src.rpm file, 'rpmbuild -ba kernel-2.6.spec' and post the buildlog somewhere, post a url to the buildlog here in the list. please dont send the entire buildlog to the list.
- K
Bogdan Nicolescu wrote:
I haven't been able to recompile Centos' default kernel on 4.2, nor on 4.3 on an x86_64
The process fails with two different problems:
- 'cannot find -lqt' error
You will get that error on x86_64 if you try and run 'make xconfig' on the source tree that is extracted after, for example, running 'rpmbuild -bp'
As the normal build process is all command line driven, then this is not a problem.
There are a few patches out there to work round this (and I believe it's fixed in more recent kernels). The patch I use which works for me is attached.
James Pearson
--- ./scripts/kconfig/Makefile.dist 2006-03-31 09:58:34.118069718 +0100 +++ ./scripts/kconfig/Makefile 2006-03-31 10:09:15.851424670 +0100 @@ -130,8 +130,8 @@ false; \ fi; \ LIBPATH=$$DIR/lib; LIB=qt; \ - $(HOSTCXX) -print-multi-os-directory > /dev/null 2>&1 && \ - LIBPATH=$$DIR/lib/$$($(HOSTCXX) -print-multi-os-directory); \ + $(HOSTCXX)-print-multi-os-directory > /dev/null 2>&1 && \ + LIBPATH=$$DIR/lib/$$($(HOSTCXX)-print-multi-os-directory); \ if [ -f $$LIBPATH/libqt-mt.so ]; then LIB=qt-mt; fi; \ echo "QTDIR=$$DIR" > $@; echo "QTLIBPATH=$$LIBPATH" >> $@; \ echo "QTLIB=$$LIB" >> $@; \
James,
I was able to get arround the 'cannot find -lqt' error using make gconfig
Now when I make bzImage it fails with offset.h.tmp missing error.
Thanks
--- James Pearson james-p@moving-picture.com wrote:
I haven't been able to recompile Centos' default
kernel on 4.2, nor on 4.3 on an x86_64
The process fails with two different problems:
- 'cannot find -lqt' error
You will get that error on x86_64 if you try and run 'make xconfig' on the source tree that is extracted after, for example, running 'rpmbuild -bp'
As the normal build process is all command line driven, then this is not a problem.
There are a few patches out there to work round this (and I believe it's fixed in more recent kernels). The patch I use which works for me is attached.
James Pearson
--- ./scripts/kconfig/Makefile.dist 2006-03-31
09:58:34.118069718 +0100 +++ ./scripts/kconfig/Makefile 2006-03-31 10:09:15.851424670 +0100 @@ -130,8 +130,8 @@ false; \ fi; \ LIBPATH=$$DIR/lib; LIB=qt; \
- $(HOSTCXX) -print-multi-os-directory > /dev/null
2>&1 && \
LIBPATH=$$DIR/lib/$$($(HOSTCXX)
-print-multi-os-directory); \
- $(HOSTCXX)-print-multi-os-directory > /dev/null
2>&1 && \
LIBPATH=$$DIR/lib/$$($(HOSTCXX)-print-multi-os-directory);
\ if [ -f $$LIBPATH/libqt-mt.so ]; then LIB=qt-mt; fi; \ echo "QTDIR=$$DIR" > $@; echo "QTLIBPATH=$$LIBPATH" >> $@; \ echo "QTLIB=$$LIB" >> $@; \
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
Bogdan Nicolescu wrote:
James,
I was able to get arround the 'cannot find -lqt' error using make gconfig
Now when I make bzImage it fails with offset.h.tmp missing error.
is there a reason you are not trying to build it from the .spec file ?
--- Karanbir Singh mail-lists@karan.org wrote:
Bogdan Nicolescu wrote:
James,
I was able to get arround the 'cannot find -lqt'
error
using make gconfig
Now when I make bzImage it fails with offset.h.tmp missing error.
is there a reason you are not trying to build it from the .spec file ?
-- Karanbir Singh : http://www.karan.org/ : 2522219@icq _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
I'm not in front of the machine right now, so the info below is from memory.
cd /usr/src/kernel/kernel* make mrproper make [x,g]config ##xconfig failed, gconfig worked after installing a couple of packages ##configure the kernel ##save information make bzImage ##fails with the offset.h.tmp error ##rest of the procedure if make bzImage is successful make modules make modules_install make install
thanks
--- Karanbir Singh mail-lists@karan.org wrote:
Bogdan Nicolescu wrote:
James,
I was able to get arround the 'cannot find -lqt'
error
using make gconfig
Now when I make bzImage it fails with offset.h.tmp missing error.
is there a reason you are not trying to build it from the .spec file ?
-- Karanbir Singh : http://www.karan.org/ : 2522219@icq _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
cd /usr/src/kernel/kernel* make mrproper make [x,g]config ##xconfig failed, gconfig worked after installing a couple of packages ##configure the kernel ##save information make bzImage ##fails with the offset.h.tmp error ##rest of the procedure if make bzImage is successful make modules make modules_install make install
This is fine for the old days, but there are new methods for doing this if you're just rebuilding the stock x86_64 kernel rpm
The short answer is-> rpm -i kernel-2.6.9-34.src.rpm rpmbuild -bp $BUILDDIR/SPECS/kernel.spec --target=x86_64
this will give you the patched kernel tree
edit the appropriate config in $BUILDDIR/SOURCES/config-2.6.9-34x86_64 rpmbuild -bs $BUILDDIR/SPECS/kernel.spec --target=x86_64 to rebuild the src.rpm with your changes
rpmbuild --rebuild $BUILDDIR/SRPMS/kernel-blah --target=x86_64
then install the new kernel rpms.
That's off the top of my head, there may be a typo or two, but that's the right direction.
-- "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety'' Benjamin Franklin 1775
--- Jim Perrin jperrin@gmail.com wrote
cd /usr/src/kernel/kernel* make mrproper make [x,g]config ##xconfig failed, gconfig worked after installing
a
couple of packages ##configure the kernel ##save information make bzImage ##fails with the offset.h.tmp error ##rest of the procedure if make bzImage is
successful
make modules make modules_install make install
This is fine for the old days, but there are new methods for doing this if you're just rebuilding the stock x86_64 kernel rpm
The short answer is-> rpm -i kernel-2.6.9-34.src.rpm rpmbuild -bp $BUILDDIR/SPECS/kernel.spec --target=x86_64
this will give you the patched kernel tree
edit the appropriate config in $BUILDDIR/SOURCES/config-2.6.9-34x86_64 rpmbuild -bs $BUILDDIR/SPECS/kernel.spec --target=x86_64 to rebuild the src.rpm with your changes
rpmbuild --rebuild $BUILDDIR/SRPMS/kernel-blah --target=x86_64
then install the new kernel rpms.
That's off the top of my head, there may be a typo or two, but that's the right direction.
Thanks Jim