Kernel Sources

Paul Howarth paul at city-fan.org
Wed Jan 5 13:57:03 UTC 2005


Chadley Wilson wrote:
> On Wednesday 05 January 2005 14:22, Markku Kolkka wrote:
> 
>>Chadley Wilson kirjoitti viestissään (lähetysaika keskiviikko, 5.
>>
>>tammikuuta 2005 06:25):
>>
>>>>> 4. In resulting tree, the configurations for the specific
>>>>>kernels shipped in Fedora Core 3 are in the /configs/
>>>>>directory. For example, the i686 SMP configuration file is
>>>>>named /configs/kernel-<version>-i686-smp.config. Issue the
>>>>>following command to place the desired configuration file
>>>>>in the proper place for building:
>>>>>
>>>>>            cp <desired-file> ./.config
>>>
>>>Which directory am I supposed to be in when I run this
>>>command?
>>
>>The base of the unpacked kernel source tree created by the
>>rpmbuild command in step 3, just as the instructions say ("In
>>the resulting tree..."). Did you perform step 3? Without any
>>errors?
>>
>>
>>>Well I have never ever done this, I am following the release
>>>notes way, thats all. I am not recompiling the kernel and am
>>>not doing anything custom. So in the perfect world situation
>>>here which file would you copy?
>>
>>The file from the configs directory that is right for your
>>desired kernel architecture. I'm not telepathic, so I don't know
>>which one is right for you.
>>
>>
>>>Give me some Idea as what it is I am supposed to copy, for all
>>>I know I must put a pdf file in configs directory.
>>
>>You don't _put_ anything in the configs directory, you copy a
>>file _from_ the configs directory as the file ".config" in the
>>base of the kernel tree.
>>
>>
>>>Please
>>>understand I haven't got a clue as to what is meant by "cp
>>><desired-file>"
>>
>>You should know the basics of Linux/Unix command line use before
>>trying to build a kernel.
>>
> 
> Look I apologise for my tone, I simply do not understand what the release 
> notes are getting at. I am sure when I get it right it will seem stupid to me 
> too.
> 
> I have a good command line background, but I have never needed to create my 
> kernel tree. I have never even needed to recompile a kernel either, so 
> understanding where to put things related to the kernel is obviously 
> something I need to learn.
> The only thing I use it for is modem drivers, which always ask for the 
> sources.
> 
> I get up to step three with no errors, in step three it tells me which 
> directory I should be in. however step four does not say if I must change 
> directories or not, 
> Since I am using the the stock 2.6.9-1.667 i686 kernel src, there must be a 
> proceedure for doing this step by step, I can't see how a standard install on 
> my PC will differ from anyone else's PC with a standard install. 
> So even if you have a i586 kernel and I have an i686 kernel I am (believe it 
> or not) smart enough to know that I am to replace your i586 with my i686.
> 
> So all I need to learn how to do, is install the kernel source tree as it was 
> in the past with FC1 and 2 , the sources where in /usr/src/linux	and where 
> installed from the kernel-sources rpm, which is no longer available.
> 
> So in a nut shell 
> step 1
> download the kernel src rpm  (done no errors)
> step2 
> install the kernel-<version>.src.rpm (done no errors)
> step 3 
> cd /usr/src/redhat/SPECS/ and run 
> rpmbuild -bp --target=<arch> kernel.spec (done no errors)
> 
> [root at check39 SPECS]# uname -a
> Linux check39.teq.pinteq 2.6.9-1.667 #1 Tue Nov 2 14:41:25 EST 2004 i686 i686 
> i386 GNU/Linux
> 
> [root at check39 chadley]# rpm -Uvh kernel-2.6.9-1.667.src.rpm
>    1:kernel                 ########################################### [100%]
> [root at check39 chadley]# cd /usr/src/redhat/SPECS/
> [root at check39 SPECS]# rpmbuild -bp --target=i686 kernel-2.6.spec
> Building target platforms: i686
> Building for target i686
> Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.21838
> + umask 022
> 
> <snipped lots of output>
> 
> + find . -name '*~' -exec rm -fv '{}' ';'
> + exit 0
> [root at check39 SPECS]#
> 
> step4 
> [root at check39 SPECS]# cd ../BUILD/kernel-2.6.9/linux-2.6.9/configs/
> [root at check39 configs]# ls
> kernel-2.6.9-i586.config  kernel-2.6.9-i586-smp.config  
> kernel-2.6.9-i686.config  kernel-2.6.9-i686-smp.config
> [root at check39 configs]#
> 
> The config I need is the kernel-2.6.9-i686.config which I must copy to 
> somewhere as .config 
> The question now is where.
> I do not have a /usr/src/linux directory must I create one or is this 
> different? Does it exist somewhere else or is it called something else!
> locate does not find it either, I have run updatedb too.

The source you're looking for is now in 
/usr/src/redhat/BUILD/kernel-2.6.9 rather than /usr/src.

This is where the rpmbuild command extracted the RPM contents to.

Paul.




More information about the users mailing list