qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 2/3] tools: build qemu-vmsr-helper


From: Daniel P . Berrangé
Subject: Re: [PATCH v4 2/3] tools: build qemu-vmsr-helper
Date: Thu, 28 Mar 2024 10:46:24 +0000
User-agent: Mutt/2.2.12 (2023-09-09)

On Thu, Mar 28, 2024 at 11:27:50AM +0100, Anthony Harivel wrote:
> Hi Daniel, 
> 
> My apologies for all the missed feedback in v2. 
> I'll be more organized for my next iteration. 
> 
> For this specific comment below, I would like to make sure I'm testing 
> the right way. 
> 
> > > diff --git a/meson.build b/meson.build
> > > index b375248a7614..376da49b60ab 100644
> > > --- a/meson.build
> > > +++ b/meson.build
> > > @@ -4052,6 +4052,11 @@ if have_tools
> > >                 dependencies: [authz, crypto, io, qom, qemuutil,
> > >                                libcap_ng, mpathpersist],
> > >                 install: true)
> > > +
> > > +    executable('qemu-vmsr-helper', 
> > > files('tools/i386/qemu-vmsr-helper.c'),
> > > +               dependencies: [authz, crypto, io, qom, qemuutil,
> > > +                              libcap_ng, mpathpersist],
> > > +               install: true)
> > >    endif
> >
> > Missed feedback from v2 saying this must /only/ be built
> > on x86 architectures. It fails to build on others due
> > to the ASM usage eg
> >
> > https://gitlab.com/berrange/qemu/-/jobs/6445384073
> >
> 
> To recreate your build system, I need to, for example, compile with the 
> following configuration for arm64 (aarch64):
> 
> ../configure --enable-werror --disable-docs --enable-fdt=system 
> --disable-user --cross-prefix=aarch64-linux-gnu- 
> --target-list-exclude="arm-softmmu cris-softmmu i386-softmmu 
> microblaze-softmmu mips-softmmu mipsel-softmmu mips64-softmmu 
> ppc-softmmu riscv32-softmmu sh4-softmmu sparc-softmmu xtensa-softmmu"
> 
> This is cross-compiling on x86 right?
> Because on my laptop I've got the following error: 
> 
> WARNING: unrecognized host CPU, proceeding with 'uname -m' output 'x86_64'
> python determined to be '/usr/bin/python3'
> python version: Python 3.12.2
> mkvenv: Creating non-isolated virtual environment at 'pyvenv'
> mkvenv: checking for meson>=0.63.0
> 
> ERROR: Unrecognized host OS (uname -s reports 'Linux')
> 
> It looks like it wants to build natively on aarch64.
> Maybe I need to create a VM with aarch64 Debian and compile natively?
> Might take a long time but I'm not sure this is the best way.

You can do this all with our Debian cross build containers locally

Either build the container fresh

   podman build --tag qemuarm64 -f 
tests/docker/dockerfiles/debian-arm64-cross.docker

Or pull down the one from CI

   podman pull registry.gitlab.com/qemu-project/qemu/qemu/debian-arm64-cross


Inside the container you just need to clone your QEMU repo and then run

   ./configure $QEMU_CONFIGURE_OPTS --target-list=x86_64-softmmu


$QEMU_CONFIGURE_OPTS expands to the args needed for a cross-compile,
as it set by the container itself.


Alternatively fork the project on gitlab, and then push your branch
to your fork, while requesting  CI

  git push -o ci.variable=QEMU_CI=1  <gitlab remote> <branch name>

then in the gitlab UI, you can press play on the individual jobs
you want to test. See docs/devel/testing.rst for info on that.

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




reply via email to

[Prev in Thread] Current Thread [Next in Thread]