[Pkg-xen-devel] Building a custom kernel-image.deb

Goswin von Brederlow brederlo at informatik.uni-tuebingen.de
Wed Mar 15 21:29:22 UTC 2006


Ralph Passgang <ralph at debianbase.de> writes:

> Am Mittwoch, 15. März 2006 17:00 schrieb Goswin von Brederlow:
>> Hi,
>>
>> maybe I'm missing something fundamental but I can't seem to be able to
>> build a custom kernel-image.deb for xen.
>>
>> I was able to build the linux-2.6 with xen images from the repository
>> and build a vmlinux file using the directions from upstream Xen. But
>> I've had no luck with make-kpkg.
>>
>> Can anyone give me some hints?
>
> Hi Goswin,
>
> take a look at:
> http://www.debian-administration.org/articles/320

That page mentions a special xen patch package and manualy applies
that to a vaniall kernel. I'm building from a linux-2.6 source
snapshot where xen should be already included. But that seems to work
different from that patch package.

> "make-kpkg --revision <yourversion> --append-to-version .6-xen --arch xen 
> kernel_image" should be enough.
>
> ".6-xen" is the extraversion, if you are using xen-3.0.0 / xen-3.0.1 / 
> xen-3.0-testing,hg
>
> --Ralph

How does it know to build a 32bit or 64bit kernel? I want the later.


mrvn at storage:~/kernel/linux-2.6-2.6.15+2.6.16-rc5$ make-kpkg --revision 2.6.15+2.6.16-rc5-0experimental.1snapshot.6056 --append-to-version .6-xen --arch xen kernel_image
 I note you are using a hyphen in the revision number.
 Please ensure that the upstream and debian revision
 numbers are policy compliant enough that dpkg and
 shall not choke on them at the end of the compile
exec debian/rules  DEBIAN_REVISION=2.6.15+2.6.16-rc5-0experimental.1snapshot.6056  APPEND_TO_VERSION=.6-xen  KPKG_ARCH=xen  kernel_image 

====== making target CONFIG-common [new prereqs: testdir]======

====== making target CONFIG-common [new prereqs: stamp-conf]======
====== making stamp-arch-conf because of CONFIG-common ======

====== making target CONFIG-arch [new prereqs: stamp-arch-conf]======
====== making .config because of Makefile ======

test -f .config || test ! -f .config.save || \
                            cp -pf .config.save .config
test -f .config || test ! -f .config || \
                            cp -pf .config .config
test -f .config || test ! -f ./debian/config || \
                            cp -pf ./debian/config  .config
test -f .config || (echo "*** Need a config file .config" && false)
====== making target conf.vars [new prereqs: Makefile .config]======

Makefile:524: /home/mrvn/kernel/linux-2.6-2.6.15+2.6.16-rc5/arch/xen/Makefile: No such file or directory
make[1]: *** No rule to make target `/home/mrvn/kernel/linux-2.6-2.6.15+2.6.16-rc5/arch/xen/Makefile'.  Stop.
make: *** [conf.vars] Error 2


This is a freshly unpacked
linux-2.6_2.6.15+2.6.16-rc5-0experimental.1snapshot.6056.dsc that
builds a xen kernel image (among all the others) just fine with
debuild.

I looks like I fist have to apply
debian/patches/xen-tree-merge-21940.patch, set CONFIG_X86_64_XEN and
then just build for arch x86_64. Is that right?

The only problem then is that make-kpkg will put the wrong image into
the deb (the one with bootsector instead of the raw image) unless I'm
mistaken. If that is so I can figure out the rest. I've messed with
make-kpkg before.

MfG
        Goswin

PS: Or should I scratch that and stick with the unofficial
linux-patch-xen?



More information about the Pkg-xen-devel mailing list