Subject: | |
From: | |
Reply To: | |
Date: | Wed, 30 Nov 2005 19:44:50 +0100 |
Content-Type: | TEXT/PLAIN |
Parts/Attachments: |
|
|
These are my notes for building a modified kernel *package*. I never tried
anything else.
- chown -R <user> /usr/src/redhat
- build can then be done as user, no root access needed
- install unmodified kernel.src.rpm
- add patches and source files in spec (# 20001+)
- rpmbuild -bp --target i686 (may fail if configuration options changed)
- if configuration options changed (or changes are wanted):
cd /usr/src/redhat/BUILD/kernel-2.6.9/linux-2.6.9
cp /usr/src/redhat/SOURCES/kernel-2.6.9-i686.config .config
make xconfig [save]
cp .config /usr/src/redhat/SOURCES/kernel-2.6.9-i686.config
- repeat with all configs from %{all_arch_configs}
- change %{release} in spec to something simple (22.0.1.dznb.2)
- change buildsmp and buildhugemem macro to 0
[not sure it works. who cares...]
- rpmbuild -ba --target i686
Some of the wizards on the list may have comments how to do this better?
Hope this helps,
Stephan
On Wed, 30 Nov 2005, Rob Henderson wrote:
> I am experiencing severe problems running usb on my acer 8104 laptop
> which may have something to do with the acpi dsdt area.
> In order to investigate this I want to recompile my kernel. I
> discovered that the linux tree was no longer part of the distribution when
> Connie Seih sent me the email below, however I have not had any success
> following this set of instructions which are taken from the release notes.
>
> I have tried numerous times to follow the instructions below simply to
> compile a default (unmodified) kernel which will boot using all 3 of the
> configuration files that come with the src.rpm. I note too that these
> configuration files are different to the configuration files found in
> /usr/src/kernel/... (are these the ones that were used to compile the
> kernels in the ditributions?). Specifically the one with the sl 4.1
> hugemem distrubution has different subarch type: generic ........
> whereas the ones that come with the rpm build does not have this and opts
> for pc-compat. I have no idea if this is significant but are the config
> files that come with the source rpm really the ones that were used to
> build the kernels with the distro! I have also tried compiling with all
> three of the /usr/src/kernels/... configuration files and they also fail.
>
> The commands I used after downloading the following file from the SL site
> are
>
> kernel-2.6.9-11.EL.src.rpm
>
>
> rpm -i kernel-2.6.9-11.EL.src.rpm
>
> rpmbuild --target=i686 SPECS/kernel2.6.spec
>
> cp configs/file ../.config (note this differs from release notes)
>
> make oldconfig
>
> make bzImage
>
> cp bzimage /boot
>
>
> modified grub.conf
>
> reboot
>
>
>
> All versions fail to boot for various reasons
>
> Prominent among the error messages are line like
>
> insmod: error inserting '/lib/scsi-mod.ko' :Operation not permitted:-1
>
>
> Finally crashing with a kernel panic or just hanging.
>
>
> I have also tried rebuilding the modules and installing them but that had no effect
>
>
> There must be something very silly and simple that I am doing wrong as
> many people must have been requiring to rebuild their kernel so it must
> my fault but I simply cannot see what.
>
> Thanks
>
> Rob Henderson
>
>
>
>
>
> Dr Rob C W Henderson
> Department of Physics Lancaster University
> Telephone : 01524 593617
>
>
> ---------- Forwarded message ----------
> Date: Wed, 09 Nov 2005 14:24:31 -0600 (CST)
> From: Connie Sieh <[log in to unmask]>
> To: Rob Henderson <[log in to unmask]>
> Cc: [log in to unmask]
> Subject: Re: compiling the kernel
>
>
> You are having issues because you do not have the full kernel source
> installed. The Upstream Vendor does not release the kernel-source rpm any
> more. Please read the RELEASE-NOTES-x86-en in /usr/share/doc/sl-release*/
>
>> From RELEASE-NOTES-x86-en
> -------------------------------------------------------------------------
> o In order to eliminate the redundancy inherent in providing a separate
> package for the kernel source code when that source code already
> exists in the kernel's .src.rpm file, Scientific Linux 4.x no
> longer includes the kernel-source package. Users that require access
> to the kernel sources can find them in the kernel .src.rpm file. To
> create an exploded source tree from this file, perform the following
> steps (note that <version> refers to the version specification for
> your currently-running kernel):
>
> 1. Obtain the kernel-<version>.src.rpm file from one of the
> following sources:
>
> o The SRPMS directory on the appropriate "SRPMS" CD iso image
>
> o The FTP site where you got the kernel package
>
> The kernel src.rpm can be obtained from
> ftp://ftp.scientificlinux.org/linux/scientific/4x/SRPMS/vendor/errata/
>
> 2. Install kernel-<version>.src.rpm (given the default RPM
> configuration, the files this package contains will be written to
> /usr/src/redhat/)
>
> 3. Change directory to /usr/src/redhat/SPECS/, and issue the
> following command:
>
> rpmbuild -bp --target=<arch> kernel.spec
>
> (Where <arch> is the desired target architecture.)
>
> On a default RPM configuration, the kernel tree will be located
> in /usr/src/redhat/BUILD/.
>
> 4. In resulting tree, the configurations for the specific kernels
> shipped in Scientific Linux 4.x 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
>
> 5. Issue the following command:
>
> make oldconfig
>
> You can then proceed as usual.
>
> -----------------------------------------------------------------------------
>
> -Connie Sieh
>
> On
> Wed, 9 Nov 2005, Rob Henderson wrote:
>
>> I am currently trying to get Scientific Linux to run properly on an Acer
>> TravelMate 8104WLMi. I knew it had issues with the acpi and the DSDT
>> database. In order to try to fix this I need to patch the kernel and
>> recompile.
>>
>> I have however found that
>>
>> when from directory /usr/src/kernel/2.6.9-5.0.5.EL-hugemem-i686
>> I issue the command
>>
>>> make zImage (I note make dep is no longer necessary)
>>
>> It fails with errors even for the standard unpatched kernel. I have tried a
>> range of recent SL 4.0 4.1 and they all fail
>>
>> The 4.1 fails with
>>
>>
>> root@lapi 2.6.9-5.0.5.EL-hugemem-i686]# make zImage
>> CHK include/linux/version.h
>> SPLIT include/linux/autoconf.h -> include/config/*
>> CHK include/asm-i386/asm_offsets.h
>> HOSTCC scripts/genksyms/genksyms.o
>> HOSTCC scripts/genksyms/lex.o
>> HOSTCC scripts/genksyms/parse.o
>> HOSTLD scripts/genksyms/genksyms
>> CC scripts/mod/empty.o
>> MKELF scripts/mod/elfconfig.h
>> HOSTCC scripts/mod/file2alias.o
>> HOSTCC scripts/mod/modpost.o
>> HOSTCC scripts/mod/sumversion.o
>> HOSTLD scripts/mod/modpost
>> make[1]: *** No rule to make target `init/main.o', needed by `init/built-in.o'. Stop.
>> make: *** [init] Error 2
>>
>>
>> On an older release 3.9 I got
>>
>>
>> /usr/src/linux-2.4.21-15.0.4.EL/include/net/esp.h:49: `crypto_hmac_update' undeclared (first use in this function)
>> make[3]: *** [xfrm_algo.o] Error 1
>> make[3]: Leaving directory `/usr/src/linux-2.4.21-15.0.4.EL/net/xfrm'
>> make[2]: *** [first_rule] Error 2
>> make[2]: Leaving directory `/usr/src/linux-2.4.21-15.0.4.EL/net/xfrm'
>> make[1]: *** [_subdir_xfrm] Error 2
>> make[1]: Leaving directory `/usr/src/linux-2.4.21-15.0.4.EL/net'
>> make: *** [_dir_net] Error 2
>>
>>
>>
>>
>> This seems rather fundamental as if something has fundamentally changed
>> which I have missed.
>>
>> I have been used to recompiling the kernel when using the old caldera distribution
>> and never had any problems so I assume I am doing something fundamentally wrong.
>> but without being able to recomp[ile I cannot fix problems.
>>
>> Thanks for any light on this
>>
>>
>>
>>
>> Dr Rob C W Henderson
>> Department of Physics Lancaster University
>> Telephone : 01524 593617
>>
>
--
----------------------------------------------------
| Stephan Wiesand | |
| | |
| DESY - DV - | phone +49 33762 7 7370 |
| Platanenallee 6 | fax +49 33762 7 7216 |
| 15738 Zeuthen | |
| Germany | |
----------------------------------------------------
|
|
|