On Sat, Feb 20, 2021 at 9:42 AM Stefan Weil <s...@weilnetz.de> wrote: > > Am 20.02.21 um 00:07 schrieb Philippe Mathieu-Daudé: > > > Cc'ing Stefan / Yonggang / Paolo. > > > > On 2/20/21 12:03 AM, Peter Maydell wrote: > >> On Fri, 19 Feb 2021 at 22:54, nerus <fhuv...@gmail.com> wrote: > >>> Good evening, I turn to you because I have a problem that does not appear > >>> in the official documentation, nor in the different blogs or irc channels. > >>> > >>> I need to do a cross compilation but it is impossible from version 5.2, > >>> when I use msys2 an error occurs indicating that symbolic links cannot be > >>> created even though the windows user has permissions to create symbolic > >>> links, I configured this through gpedit.msc. > >>> > >>> when I use cygwin with the mingw64-w64 tool chain an error occurs whereby > >>> meson says that it cannot find any compiler even though the compiler path > >>> is specified in the configuration script, mingw cannot be used from linux > >>> either due to There are many missing components that cannot be compiled > >>> by hand because the proper versions are no longer available, how could > >>> you solve these problems without using already compiled binaries? Thank > >>> you > > > The only tested build settings for producing 5.2 and newer Windows > binaries use Mingw-w64 cross tools on Linux. Up to now I did not try > building 5.2 on Windows. > > Depending on the Linux distribution there are more or less missing > components. > > As far as I know Fedora provides a rather complete list of cross > packages which not only covers the cross tools but also the required > other components (libraries). > > Debian based distributions only provide the cross tools (compiler, > linker, nsis). It should be possible to compile all required libraries > by hand, but of course that is a lot of work. I recently did that for > the braille library, and it took me about a day to get 32 and 64 bit > binaries. Therefore I use Debian with the Mingw-w64 library cross > packages from Cygwin. My GitHub repository includes a GitHub action > which runs the cross builds: > https://github.com/stweil/qemu/blob/master/.github/workflows/build.sh. > That should also work on Windows with the Windows Subsystem for Linux (WSL). > > Recently (with bullseye and later) Debian changed the exception handling > for the 64 bit C++ cross compiler. Therefore Debian bullseye and similar > distributions can no longer be used with the Cygwin libraries. I still > have no solution for that. > > Stefan > > > >> Cross compilation works in general -- our CI testing setup > >> includes various cross-compile configurations, including > >> building Windows executables from a Linux host > >> (eg https://gitlab.com/qemu-project/qemu/-/jobs/1042844159). > >> > >> You'll need to be more specific about exactly what you're > >> trying to do and failing (eg quoting exact commands, > >> setups, error messages).
Hi, I still use: https://wiki.qemu.org/Hosts/W32#Native_builds_with_MSYS2 And it works without allowing symbolic links. I used to need to set that right to allowed, but it seems that is no longer the case and so I retracted it. Note that I do get a single warning about symlinks: ln: failed to create symbolic link 'ppc-softmmu/qemu-system-ppc': No such file or directory. But that does not prevent a successful build. If you set the symbolic link right, you should also uncomment #MSYS=winsymlinks:nativestrict in both msys2.ini and mingw64.ini Best, Howard