пет, 26. јун 2020. у 12:54 Jon Doron <ari...@gmail.com> је написао/ла:
>
> Is there a container I can download which has your build environment?
>

Hello, Jon.

I don't know about the container, but, as Peter noted, the following
(non-beautiful) diff fixes the build problem on the real host:

diff --git a/hw/hyperv/vmbus.c b/hw/hyperv/vmbus.c
index f371240176..9220f7b529 100644
--- a/hw/hyperv/vmbus.c
+++ b/hw/hyperv/vmbus.c
@@ -383,7 +383,8 @@ static ssize_t gpadl_iter_io(GpadlIter *iter, void
*buf, uint32_t len)
             }
         }

-        p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) | off_in_page);
+        p = (void *)(uintptr_t)(((uintptr_t)iter->map & TARGET_PAGE_MASK) |
+                                off_in_page);
         if (iter->dir == DMA_DIRECTION_FROM_DEVICE) {
             memcpy(p, buf, cplen);
         } else {

Not sure if this is an optimal/most-elegant solution though.

Warmly,
Aleksandar


> On Fri, Jun 26, 2020 at 12:27 PM Philippe Mathieu-Daudé
> <phi...@redhat.com> wrote:
> >
> > On 6/26/20 11:20 AM, Thomas Huth wrote:
> > > On 26/06/2020 11.13, Philippe Mathieu-Daudé wrote:
> > >> On 6/26/20 9:37 AM, Aleksandar Markovic wrote:
> > >>> пет, 26. јун 2020. у 09:11 Aleksandar Markovic
> > >>> <1885...@bugs.launchpad.net> је написао/ла:
> > >>>>
> > >>>> Public bug reported:
> > >>>>
> > >>>> The code base is on master, checked out on Thursday June25th 2020,
> > >>>> 0250c595c9d. The build procedure:
> > >>>>
> > >>>> $ mkdir build-gcc
> > >>>> $ cd build-gcc
> > >>>> $ ../configure
> > >>>> $ make
> > >>>>
> > >>>> The build error message is:
> > >>>>
> > >>>>    CC      x86_64-softmmu/hw/hyperv/hyperv.o
> > >>>>    CC      x86_64-softmmu/hw/hyperv/hyperv_testdev.o
> > >>>>    CC      x86_64-softmmu/hw/hyperv/vmbus.o
> > >>>> /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c: In function
> > >>>> ‘gpadl_iter_io’:
> > >>>> /home/rtrk/Build/qemu-master/hw/hyperv/vmbus.c:386:13: error: cast
> > >>>> to pointer from integer of different size [-Werror=int-to-pointer-cast]
> > >>>>           p = (void *)(((uintptr_t)iter->map & TARGET_PAGE_MASK) |
> > >>>> off_in_page);
> > >>>>               ^
> > >>>> cc1: all warnings being treated as errors
> > >>>> make[1]: *** [/home/rtrk/Build/qemu-master/rules.mak:69:
> > >>>> hw/hyperv/vmbus.o] Error 1
> > >>>> make: *** [Makefile:527: x86_64-softmmu/all] Error 2
> > >>
> > >> FWIW there is no CI job covering x86 KVM on 32-bit host build.
> > >> Should this be covered? I guess the problem is no CI services
> > >> provide 32-bit x86...
> > >
> > > You can certainly provide either a container, or install the 32-bit
> > > libraries in a 64-bit environment. Then run
> > >
> > > PKG_CONFIG_LIBDIR=... ./configure --extra-cflags=-m32
> > >
> > > and it should be possible to build 32-bit binaries, too.
> > >
> > > Alternatively, we could add a cross-compilation job that builds with
> > > i686-w64-mingw32 in 32-bit.
> >
> > Oh, this case is covered:
> > https://app.shippable.com/github/qemu/qemu/runs/2437/2/console
> >
> > But this doesn't use KVM ;)
> >

Reply via email to