All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] Building nsis installer - cross compile for Windows
@ 2019-01-28  4:34 Adam Baxter
  2019-01-28 13:46 ` Peter Maydell
  0 siblings, 1 reply; 7+ messages in thread
From: Adam Baxter @ 2019-01-28  4:34 UTC (permalink / raw)
  To: qemu-devel

I'm getting stuck trying to build the NSIS installer for Windows


export CFLAGS="-Wno-stringop-truncation"
./configure --python=$(command -v python3)
--cross-prefix=x86_64-w64-mingw32- --enable-docs
echo 3.99.99 > VERSION
make -j`nproc`
make -j`nproc` installer

results in:

make[1]: Leaving directory '/drone/src'
(cd /tmp/qemu-nsis; \
         for i in qemu-system-*.exe; do \
           arch=${i%.exe}; \
           arch=${arch#qemu-system-}; \
           echo Section \"$arch\" Section_$arch; \
           echo SetOutPath \"\$INSTDIR\"; \
           echo File \"\${BINDIR}\\$i\"; \
           echo SectionEnd; \
         done \
        ) >/tmp/qemu-nsis/system-emulations.nsh
makensis -V2 -NOCD \
                -DCONFIG_DOCUMENTATION="y" \
                 \
                -DBINDIR="/tmp/qemu-nsis" \
                 \
                -DSRCDIR="/drone/src" \
                -DOUTFILE="qemu-setup-3.99.99.exe" \
                -DDISPLAYVERSION="3.99.99" \
                /drone/src/qemu.nsi
File: "/tmp/qemu-nsis\*.bmp" -> no files found.
Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
   /oname=outfile one_file_only)
Error in script "/drone/src/qemu.nsi" on line 122 -- aborting creation process
make: *** [Makefile:915: qemu-setup-3.99.99.exe] Error 1

Any ideas?

Platform is Fedora / mingw x86_64-w64-mingw32 in a Docker container.

Thanks,
Adam

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Building nsis installer - cross compile for Windows
  2019-01-28  4:34 [Qemu-devel] Building nsis installer - cross compile for Windows Adam Baxter
@ 2019-01-28 13:46 ` Peter Maydell
  2019-01-28 14:56   ` Daniel P. Berrangé
  0 siblings, 1 reply; 7+ messages in thread
From: Peter Maydell @ 2019-01-28 13:46 UTC (permalink / raw)
  To: Adam Baxter; +Cc: QEMU Developers, Daniel P. Berrange

On Mon, 28 Jan 2019 at 13:34, Adam Baxter <voltagex@voltagex.org> wrote:
>
> I'm getting stuck trying to build the NSIS installer for Windows
>
>
> export CFLAGS="-Wno-stringop-truncation"
> ./configure --python=$(command -v python3)
> --cross-prefix=x86_64-w64-mingw32- --enable-docs
> echo 3.99.99 > VERSION
> make -j`nproc`
> make -j`nproc` installer
>
> results in:

> File: "/tmp/qemu-nsis\*.bmp" -> no files found.
> Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
>    /oname=outfile one_file_only)
> Error in script "/drone/src/qemu.nsi" on line 122 -- aborting creation process
> make: *** [Makefile:915: qemu-setup-3.99.99.exe] Error 1

I suspect this is because we've recently removed the
qemu-icon.bmp but didn't update the NSIS installer script,
which is now looking for a wildcard that doesn't match anything
(and isn't trying to install the new .png icon files).
If you try this on a commit before a8260d3876389eb52 does it
work?

qemu-icon.bmp seems also to still be listed in the LINKS
in configure which defines what we symlink from the source
tree to the build tree (and again, the png files are not).

thanks
-- PMM

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Building nsis installer - cross compile for Windows
  2019-01-28 13:46 ` Peter Maydell
@ 2019-01-28 14:56   ` Daniel P. Berrangé
  2019-01-28 15:03     ` Peter Maydell
  0 siblings, 1 reply; 7+ messages in thread
From: Daniel P. Berrangé @ 2019-01-28 14:56 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Adam Baxter, QEMU Developers

On Mon, Jan 28, 2019 at 01:46:57PM +0000, Peter Maydell wrote:
> On Mon, 28 Jan 2019 at 13:34, Adam Baxter <voltagex@voltagex.org> wrote:
> >
> > I'm getting stuck trying to build the NSIS installer for Windows
> >
> >
> > export CFLAGS="-Wno-stringop-truncation"
> > ./configure --python=$(command -v python3)
> > --cross-prefix=x86_64-w64-mingw32- --enable-docs
> > echo 3.99.99 > VERSION
> > make -j`nproc`
> > make -j`nproc` installer
> >
> > results in:
> 
> > File: "/tmp/qemu-nsis\*.bmp" -> no files found.
> > Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
> >    /oname=outfile one_file_only)
> > Error in script "/drone/src/qemu.nsi" on line 122 -- aborting creation process
> > make: *** [Makefile:915: qemu-setup-3.99.99.exe] Error 1
> 
> I suspect this is because we've recently removed the
> qemu-icon.bmp but didn't update the NSIS installer script,
> which is now looking for a wildcard that doesn't match anything
> (and isn't trying to install the new .png icon files).
> If you try this on a commit before a8260d3876389eb52 does it
> work?

Opps, I'll cook up a fix that.

> 
> qemu-icon.bmp seems also to still be listed in the LINKS
> in configure which defines what we symlink from the source
> tree to the build tree (and again, the png files are not).

Wierd, I don't understand why we need any of that LINKS stuff in
configure. Not having the png files listed doesn't cause any
obvious problem that I can see. For that matter nor does having
the (now deleted) qemu-icon.bmp seem to cause a failure, as we
silent ignore source tree files that don't exist.

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 :|

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Building nsis installer - cross compile for Windows
  2019-01-28 14:56   ` Daniel P. Berrangé
@ 2019-01-28 15:03     ` Peter Maydell
  2019-01-28 15:11       ` Daniel P. Berrangé
  0 siblings, 1 reply; 7+ messages in thread
From: Peter Maydell @ 2019-01-28 15:03 UTC (permalink / raw)
  To: Daniel P. Berrangé; +Cc: Adam Baxter, QEMU Developers

On Mon, 28 Jan 2019 at 14:56, Daniel P. Berrangé <berrange@redhat.com> wrote:
>
> On Mon, Jan 28, 2019 at 01:46:57PM +0000, Peter Maydell wrote:
> > qemu-icon.bmp seems also to still be listed in the LINKS
> > in configure which defines what we symlink from the source
> > tree to the build tree (and again, the png files are not).
>
> Wierd, I don't understand why we need any of that LINKS stuff in
> configure. Not having the png files listed doesn't cause any
> obvious problem that I can see. For that matter nor does having
> the (now deleted) qemu-icon.bmp seem to cause a failure, as we
> silent ignore source tree files that don't exist.

The LINKS stuff is so that you can run binaries from out of
the build directory and have them find things like the BIOS
blobs. In this case presumably a QEMU run from the build
dir wouldn't find its icon (unless somebody had done a
'make install' on the system in the past). Though something
doesn't seem quite right here, because the sdl2.c code is
looking for icon files in a hicolor/ subdirectory that
doesn't exist in the source tree.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Building nsis installer - cross compile for Windows
  2019-01-28 15:03     ` Peter Maydell
@ 2019-01-28 15:11       ` Daniel P. Berrangé
  2019-01-28 15:15         ` Peter Maydell
  0 siblings, 1 reply; 7+ messages in thread
From: Daniel P. Berrangé @ 2019-01-28 15:11 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Adam Baxter, QEMU Developers

On Mon, Jan 28, 2019 at 03:03:34PM +0000, Peter Maydell wrote:
> On Mon, 28 Jan 2019 at 14:56, Daniel P. Berrangé <berrange@redhat.com> wrote:
> >
> > On Mon, Jan 28, 2019 at 01:46:57PM +0000, Peter Maydell wrote:
> > > qemu-icon.bmp seems also to still be listed in the LINKS
> > > in configure which defines what we symlink from the source
> > > tree to the build tree (and again, the png files are not).
> >
> > Wierd, I don't understand why we need any of that LINKS stuff in
> > configure. Not having the png files listed doesn't cause any
> > obvious problem that I can see. For that matter nor does having
> > the (now deleted) qemu-icon.bmp seem to cause a failure, as we
> > silent ignore source tree files that don't exist.
> 
> The LINKS stuff is so that you can run binaries from out of
> the build directory and have them find things like the BIOS
> blobs. In this case presumably a QEMU run from the build
> dir wouldn't find its icon (unless somebody had done a
> 'make install' on the system in the past). Though something
> doesn't seem quite right here, because the sdl2.c code is
> looking for icon files in a hicolor/ subdirectory that
> doesn't exist in the source tree.

That directory is the standard icon installation directory for
application icons. The QEMU icons are placed there by 'make install',
but in the source dir they are in a flat layotu.

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 :|

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Building nsis installer - cross compile for Windows
  2019-01-28 15:11       ` Daniel P. Berrangé
@ 2019-01-28 15:15         ` Peter Maydell
  2019-07-13 15:38           ` Philippe Mathieu-Daudé
  0 siblings, 1 reply; 7+ messages in thread
From: Peter Maydell @ 2019-01-28 15:15 UTC (permalink / raw)
  To: Daniel P. Berrangé; +Cc: Adam Baxter, QEMU Developers

On Mon, 28 Jan 2019 at 15:11, Daniel P. Berrangé <berrange@redhat.com> wrote:
>
> On Mon, Jan 28, 2019 at 03:03:34PM +0000, Peter Maydell wrote:
> > Though something
> > doesn't seem quite right here, because the sdl2.c code is
> > looking for icon files in a hicolor/ subdirectory that
> > doesn't exist in the source tree.
>
> That directory is the standard icon installation directory for
> application icons. The QEMU icons are placed there by 'make install',
> but in the source dir they are in a flat layotu.

There doesn't seem to be any code to handle the flat layout,
though. (Contrast os_find_datadir() which looks in several
places for any particular file.)

thanks
-- PMM

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Building nsis installer - cross compile for Windows
  2019-01-28 15:15         ` Peter Maydell
@ 2019-07-13 15:38           ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 7+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-07-13 15:38 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Adam Baxter, Daniel P. Berrangé, QEMU Developers

On Mon, Jan 28, 2019 at 4:18 PM Peter Maydell <peter.maydell@linaro.org> wrote:
> On Mon, 28 Jan 2019 at 15:11, Daniel P. Berrangé <berrange@redhat.com> wrote:
> >
> > On Mon, Jan 28, 2019 at 03:03:34PM +0000, Peter Maydell wrote:
> > > Though something
> > > doesn't seem quite right here, because the sdl2.c code is
> > > looking for icon files in a hicolor/ subdirectory that
> > > doesn't exist in the source tree.
> >
> > That directory is the standard icon installation directory for
> > application icons. The QEMU icons are placed there by 'make install',
> > but in the source dir they are in a flat layotu.
>
> There doesn't seem to be any code to handle the flat layout,
> though. (Contrast os_find_datadir() which looks in several
> places for any particular file.)

FWIW this bug is still present in QEMU v4.1.0-rc0.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-07-13 15:38 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-28  4:34 [Qemu-devel] Building nsis installer - cross compile for Windows Adam Baxter
2019-01-28 13:46 ` Peter Maydell
2019-01-28 14:56   ` Daniel P. Berrangé
2019-01-28 15:03     ` Peter Maydell
2019-01-28 15:11       ` Daniel P. Berrangé
2019-01-28 15:15         ` Peter Maydell
2019-07-13 15:38           ` Philippe Mathieu-Daudé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.