RFR: 8357079: Fix Windows AArch64 DevKit Creation

Magnus Ihse Bursie ihse at openjdk.org
Mon Jun 16 13:41:32 UTC 2025


On Sun, 15 Jun 2025 04:50:40 GMT, Luigi Montoya <duke at openjdk.org> wrote:

>> I agree with your general premise, that the devkit should be created for the platform the devkit script is run on.
>> 
>> When you say that you should produce "native" x64 libraries on aarch64, do you mean that they should be run using x64 emulation? Otherwise you can't really have native x64 on aarch64... And even if that works, would it not be better to have pure native aarch64 cross-compiling to x64 (given that Microsoft in fact ships such compilers).
>
> When you download the Visual Studio Build Tools on an ARM64 machine, it downloads the native binaries for the `x64` architecture under `Hostx64` and the native binaries for `arm64` under `Hostarm64`. This devkit script does not generate any binaries; it simply copies the Build Tools from Visual Studio.

I find this confusing, but that's probably since I don't understand what Microsoft is shipping and where.

There are 4 relevant compilers:
1) A compiler that runs on x64 and generates x64 code (x64 native compilation)
2) A compiler that runs on x64 and generates aarch64 code (aarch64 cross-compilation on x64)
3) A compiler that runs on aarch64 and generates aarch64 code (aarch64 native compilation)
4) A compiler that runs on aarch64 and generates x64 code (x64 cross-compilation on aarch64)

For a devkit targeting x64, 1) and 2) should be included. For a devkit targeting aarch64, 3) (and ideally 4) as well) should be included. 

Are you saying that if you download VS on aarch64, you will get all four compilers installed?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25259#discussion_r2150037490


More information about the build-dev mailing list