On Wed, Sep 29, 2021 at 01:29:21PM -0500, Eric Blake wrote:
> On Wed, Sep 29, 2021 at 05:03:08PM +0200, Paolo Bonzini wrote:
> > On 29/09/21 15:58, Richard Henderson wrote:
> > >
> > > > /usr/bin/ld: /usr/lib64/libselinux.so: error adding symbols: file in
> > > > wrong format
> > > > collect2: error: ld returned 1 exit status
> > >
> > > Missing libselinux-devel.i686 in
> > > tests/docker/dockerfiles/fedora-i386-cross.docker, I think?
This part is easy to fix.
> > > But additionally, incorrect package probing, I think.
> >
> > Probably Meson deciding to look at --print-search-dirs and crossing fingers.
> > But -m32 and other multilib flags should be added to config-meson.cross
> > rather than QEMU_CFLAGS.
However this part I've no idea. The docker file uses:
ENV QEMU_CONFIGURE_OPTS --extra-cflags=-m32 --disable-vhost-user
I emulated this locally using:
PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig ../configure --extra-cflags=-m32 --disable-vhost-user
but config-meson.cross does not have -m32 anywhere. Nevertheless it
seemed to build a 32 bit qemu with selinux fine:
$ file ./qemu-system-x86_64
./qemu-system-x86_64: ELF 32-bit LSB pie executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, BuildID[sha1]=1d070416c7d211f8bfa018557265c25e79a913bb, for GNU/Linux 3.2.0, with debug_info, not stripped
$ ldd ./qemu-system-x86_64 | grep selin
libselinux.so.1 => /lib/libselinux.so.1 (0xf52b0000)
I will post v3 soon, but how can I test patches under your CI system?
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW