[Mesa-dev] [EXTERNAL] Cross-compile from Linux to Windows
jenatali at microsoft.com
Mon Nov 9 15:48:55 UTC 2020
What version of Mesa are you trying to build? Assuming you're using a version newer than 19.3 (with this change https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/986), the default LLVM discovery should be to use CMake. That means it looks for an installed LLVM in the CMake search dirs.
If you don't have https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4555, you will also need to explicitly request a static version of LLVM (-Dshared-llvm=false).
From: Federico Dossena <info at fdossena.com>
Sent: Monday, November 9, 2020 7:34 AM
To: Jesse Natalie <jenatali at microsoft.com>; mesa-dev at lists.freedesktop.org
Subject: Re: [EXTERNAL] [Mesa-dev] Cross-compile from Linux to Windows
Thank you for your reply.
That's where I got stuck on Windows, I can't get it to find LLVM.
I built LLVM without problems for both x86 and x86_64 in 2 separate folders, but when I try to build mesa, even with --cmake-prefix-path, it doesn't find it, it always say "Neither a subproject directory nor a llvm.wrap file was found".
I tried moving my LLVM files in the subprojects/llvm folder and that didn't fix it, I don't know what to do.
On 2020-11-09 16:06, Jesse Natalie wrote:
> Have you tried using Meson on Windows, instead of cross-compiling? If you run it from a Visual Studio command prompt, it should just work out of the box, at least for x86. I believe you'll need to use a cross file for amd64, but the only thing you'd need to specify is the host architecture.
> Though I guess if you're building LLVMPipe you'll need to point it to LLVM. In my experience, adding "--cmake-prefix-path" to the Meson command line should work well.
> -----Original Message-----
> From: mesa-dev <mesa-dev-bounces at lists.freedesktop.org> On Behalf Of
> Federico Dossena
> Sent: Saturday, November 7, 2020 4:14 AM
> To: mesa-dev at lists.freedesktop.org
> Subject: [EXTERNAL] [Mesa-dev] Cross-compile from Linux to Windows
> I'm sorry to bother you in the dev list but it seems to be the only one with activity so it seems like the best place to ask.
> I maintain some Mesa builds for Windows. These are builds of libgl-gdi with llvmpipe, for both x86 and x86_64; in other words, they're opengl32.dll files that users can drop into their game/application to have software rendering for OpenGL as a workaround for broken drivers or as a fallback for older systems.
> I've always used scons on Windows and msvc as a compiler to make these builds, but now that scons is being deprecated I've been trying to use meson and ninja to cross-compile from Linux (amd64) to Windows (both x86 and x86_64) without much success. I can get regular Linux builds without issues though.
> I tried reading the Mesa documentation on cross-compiling but it's very minimal and it's partially obsolete so I thought it would be best to ask you directly: how do I make these builds? Explain like I'm 5, basically.
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
More information about the mesa-dev