Mo

Just to give you an additional data point for your aim to build
xen-image-minimal, I just tried building xen-image-minimal using krogoth
since that's what you indicated was your plan, with success in the end but
a couple of nudges are needed along the way.

note: I did not use the full set of layers that you mention, as I think the
fewer layers involved, the greater the odds of success and I don't think
the other layers are necessary.

I used the "genericx86-64" MACHINE.

The changes I needed were:
* xen-image-minimal.bb needs SYSLINUXCFG changing to SYSLINUX_CFG
* ipxe fetch source needs changing to https at the moment as git isn't
currently working
* vgabios recipe compiles a tool ("biossums") that it then uses on the host
-- this seems iffy to me, but I was able to work around it by hand, by
deleting the binary and compiling the tool using "make", which was enough
to unblock progress for the rest of the build.

Here are my notes:

=========
# Using 64-bit debian jessie:
user@build-vm:~$ cat /etc/debian_version
8.8
user@build-vm:~$ uname -a
Linux build-vm 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2 (2017-04-30) x86_64
GNU/Linux

# as root:
apt-get update
apt-get install build-essential chrpath diffstat gawk git libncurses5-dev
pkg-config subversion texi2html texinfo

# as build user:
cd /mnt/build
git clone git://git.yoctoproject.org/poky.git -b krogoth
cd poky

git clone git://git.openembedded.org/meta-openembedded -b krogoth
git clone git://git.yoctoproject.org/meta-virtualization -b krogoth

source ./oem-init-build-env

edit conf/bblayers.conf :
----
# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /mnt/build/poky/meta \
  /mnt/build/poky/meta-poky \
  /mnt/build/poky/meta-yocto-bsp \
  /mnt/build/poky/meta-openembedded/meta-oe \
  /mnt/build/poky/meta-openembedded/meta-networking \
  /mnt/build/poky/meta-openembedded/meta-python \
  /mnt/build/poky/meta-virtualization \
  "
----

edit conf/local.conf, append:
----
MACHINE = "genericx86-64"
DISTRO_FEATURES_append = " xen"
----

# update the fetch source for ipxe as the git protocol is currently
failing, so use https:
sed 's,protocol=git,protocol=https,' -i ../meta-virtualization/recipes-
extended/ipxe/ipxe_git.bb

# fix SYSLINUXCFG => SYSLINUX_CFG in xen-image-minimal:
sed 's/SYSLINUXCFG/SYSLINUX_CFG/' -i ../meta-virtualization/recipes-
extended/images/xen-image-minimal.bb

bitbake xen-image-minimal

# vgabios build can fail if your host mismatches your target; if so, try
this workaround:
cd tmp/work/core2-64-poky-linux/vgabios/0.7a-r0/vgabios-0.7a
rm biossums
make biossums
cd -
bitbake vgabios

bitbake xen-image-minimal
# => build success!

I may get some time to test building with a more recent branch later this
week. pyro was ok when I was testing Xen 4.9 work last week, albeit that
with a different MACHINE.

Christopher


On Fri, Aug 11, 2017 at 12:25 PM, Mo Bah <mobah...@outlook.com> wrote:

> Hi Everyone,
>
> I am trying to build xen-image-minimal out of Yocto and I did checkout of
> the master branch of the meta-virtualization layer.
>
>
> But when doing, 'bitbake xen-image-minimal', I am seeing the following
> error.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> *| make[5]: Leaving directory
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/arch/x86/cpu'
> | make[4]: Leaving directory
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/arch/x86'
> |
> /home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/Rules.mk:166:
> recipe for target
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/arch/x86/built_in.o'
> failed | make[3]: ***
> [/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/arch/x86/built_in.o]
> Error 2 | make[3]: Leaving directory
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/arch/x86'
> | Makefile:135: recipe for target
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/xen'
> failed | make[2]: ***
> [/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen/xen]
> Error 2 | make[2]: Leaving directory
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen'
> | Makefile:45: recipe for target 'install' failed | make[1]: *** [install]
> Error 2 | make[1]: Leaving directory
> '/home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/xen-4.8.0/xen'
> | Makefile:97: recipe for target 'install-xen' failed | make: ***
> [install-xen] Error 2 | ERROR: oe_runmake failed | WARNING: exit code 1
> from a shell command. | ERROR: Function failed: do_compile (log file is
> located at
> /home/m/grxen/poky/build/tmp-glibc/work/core2-64-oe-linux/xen/4.8.0-r0/temp/log.do_compile.30351)
> ERROR: Task
> (/home/m/grxen/poky/meta-virtualization/recipes-extended/xen/xen_4.8.0.bb:do_compile)
> failed with exit code '1' NOTE: Tasks Summary: Attempted 2081 tasks of
> which 1387 didn't need to be rerun and 1 failed. Summary: 1 task failed:
> /home/m/grxen/poky/meta-virtualization/recipes-extended/xen/xen_4.8.0.bb:do_compile
> Summary: There were 2 ERROR messages shown, returning a non-zero exit code.*
>
> Is the master branch of meta-virtualization layer having issues with
> 'xen-image-minimal'?
>
> I tried the 'bitbake xen-image-minimal' by putting the *'MACHINE ?=
> "intel-corei7-64"* and *MACHINE ?= "genericx86-64" *and 
> *DISTRO_FEATURES_append
> = " xen"* in the conf/local.conf.
>
> And the bblayers.conf looks like:
> BBLAYERS ?= " \
>   /home/m/grxen/poky/meta \
>   /home/m/grxen/poky/meta-poky \
>   /home/m/grxen/poky/meta-yocto-bsp \
>   /home/m/grxen/poky/meta-openembedded/meta-oe \
>   /home/m/grxen/poky/meta-openembedded/meta-python \
>   /home/m/grxen/poky/meta-openembedded/meta-networking \
>   /home/m/grxen/poky/meta-openembedded/meta-filesystems \
>   /home/m/grxen/poky/meta-virtualization \
>   /home/m/grxen/poky/oe-meta-go \
>   /home/m/grxen/poky/openembedded-core/meta \
>   /home/m/grxen/poky/openembedded-core/meta-selftest \
>   /home/m/grxen/poky/openembedded-core/meta-skeleton \
>   /home/m/grxen/poky/meta-selinux \
>   "
>
> And all the layers have been downloaded as per documentation mentioned in
> http://git.yoctoproject.org/cgit/cgit.cgi/meta-virtualization/about/
>
> meta-virtualization - Layer enabling hypervisor ...
> <http://git.yoctoproject.org/cgit/cgit.cgi/meta-virtualization/about/>
> git.yoctoproject.org
> Layer enabling hypervisor, virtualization tool stack, and cloud support.
> git repository hosting
> Could you suggest which branch of meta-virtualization would work for
> 'xen-image-minimal' while doing bitbake?
> Currently, I am trying with git checkout -b krogoth origin/krogoth branch.
>
> Thanks
> M
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> --
> _______________________________________________
> meta-virtualization mailing list
> meta-virtualization@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-virtualization
>
>
-- 
_______________________________________________
meta-virtualization mailing list
meta-virtualization@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-virtualization

Reply via email to