[CentOS] recompiling kernel results in error: .../linux-2.6.18.i686/arch//Makefile: No such file or directory

dcw dwoody1 at charter.net
Fri May 25 04:47:58 UTC 2007


I did some more investigation.
After a cd to the BUILD directory, I ran 'make xconfig' and set the 3 items 
that I need. isa, isapnp and ne2000 support.

From the SPEC directory I ran 'rpmbuild -bc --short-circuit kernel-2.6.spec'.
After about 4 minutes I looked at the contents of the .config file in the 
BUILD directory.

ALL 3 ITEMS I had selected had been DELETED.

I also noticed that rpmbuild -bc runs 'make mrproper'.
From my 2.4.x days, I seem to remember that mrproper restores everything to 
original content. Is my memory correct?

Thanks,

David


On Thursday 24 May 2007 4:04 pm, Akemi Yagi wrote:
> On 5/24/07, dcw <dwoody1 at charter.net> wrote:
> > On Thursday 24 May 2007 1:37 pm, Akemi Yagi wrote:
> > > On 5/24/07, dcw <dwoody1 at charter.net> wrote:
> > > > > (1) prepare .spec by removing lines from %prep
> > > > > (2) rpmbuild -bp kernel-2.6.spec
> > > > > (3) go to BUILD  (where .config is)
> > > > > (4) make xconfig
> > > > > (5) add # i386 to .config as the first line
> > > > > (6) copy this .config back to SOURCES  (using the original name
> > > > > xxx.config)
> > > > >(7) rpmbuild -ba kernel-2.6.spec
> > > > > Or, instead of steps (5) to (7), just run:
> > > >
> > > > I did 5 and 6 anyway, assuming that in the worst case they were not
> > > > needed and would do no harm. I then did 'rpmbuild -bc ...' as below.
> >
> > Does the rpmbuild -bc work only in the BUILD directory? Or does it work
> > in the SOURCE directory?
>
> You can run it from anywhere as far as you use the full path.
>
> > Will doing step 5 and 6 cause any problems?
>
> No.  In fact, you do need these steps before running rpmbuild -bc.  As
> I wrote earlier, you can skip these steps IF you run rpmbuild with the
> --short-circuit flag.  The flag prevents rpmbuild from running the
> %prep stage, therefore the .config file does not need the # i386 line
> any more and there is no need to copy it back to SOURCE.
>
> > > > It was working until gpg had a segfault. From some of the emails I
> > > > have been reading this is a known problem that has not been fixed
> > > > yet.
> >
> > There is sigmodules in several places in the SPEC file. The first one is
> > set to '0' but the others are not.
> > I prefer not setting singmodules to '0' unless I know what the risks are.
>
> I don't really know if there are any serious cosequencies because of
> this, so I cannot advise here.
>
> > The last time I recompiled a kernel was when it was at 2.4.x. Is there a
> > way to compile the kernel without using rpmbuild?
>
> Yes, although I don't recommend it.  If you are really determined to
> do it, I suggest you do a through study on kernel building.
> Compilation itself could be as simple as copying the entire source
> directory to a place and running a series of make commands (make, make
> modules_install make install).  Depending on how you get the .config
> file, you may or may not need to run a ARCH=i386 make oldconfig before
> make menuconfig, etc, etc.
>
> > > By the way, Johnny Hughes has kindly checked the above procedure and
> > > said, "that's what I do."  This is a big assurance.  I agree that your
> > > goal is almost there.
> >
> > This is good, but what does he do to avoid segfaults?
>
> I have not seen segfaults myself.  It is possible that he has not, either.
>
> > Thanks,
> >
> > David
>
> _______________________________________________
> CentOS mailing list
> CentOS at centos.org
> http://lists.centos.org/mailman/listinfo/centos



More information about the CentOS mailing list