Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MSVC ARM build error with winnt.h #11684

Open
2 of 15 tasks
maron2000 opened this issue Feb 28, 2025 · 3 comments
Open
2 of 15 tasks

MSVC ARM build error with winnt.h #11684

maron2000 opened this issue Feb 28, 2025 · 3 comments

Comments

@maron2000
Copy link

maron2000 commented Feb 28, 2025

Description

Since a few days ago, building DOSBox-X with Windows ARM target fails with the following errors.
x86 32bit and 64bit builds sucessfully.
I don't know if there were any recent changes in the runner.
Currently using windows-latest runner.

Edit: There are actually numerous files with errors where no changes are added.

C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um\winnt.h(6342,12): error C3861: '_CountOneBits64': identifier not found (compiling source file ..\src\hardware\ide.cpp) [D:\a\dosbox-x\dosbox-x\vs\dosbox-x.vcxproj]

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • Ubuntu 20.04
  • Ubuntu 22.04
  • Ubuntu 24.04
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • macOS 15
  • macOS 15 Arm64
  • Windows Server 2019
  • Windows Server 2022
  • Windows Server 2025

Image version and build link

https://github.com/joncampbell123/dosbox-x/actions/runs/13570640550/job/37934469893#step:1:7

2025-02-27T16:08:17.1959584Z Current runner version: '2.322.0'
2025-02-27T16:08:17.1996380Z ##[group]Operating System
2025-02-27T16:08:17.1997632Z Microsoft Windows Server 2022
2025-02-27T16:08:17.1998680Z 10.0.20348
2025-02-27T16:08:17.1999449Z Datacenter
2025-02-27T16:08:17.2000294Z ##[endgroup]
2025-02-27T16:08:17.2001098Z ##[group]Runner Image
2025-02-27T16:08:17.2001993Z Image: windows-2022
2025-02-27T16:08:17.2002843Z Version: 20250224.5.0
2025-02-27T16:08:17.2004744Z Included Software: https://github.com/actions/runner-images/blob/win22/20250224.5/images/windows/Windows2022-Readme.md
2025-02-27T16:08:17.2007452Z Image Release: https://github.com/actions/runner-images/releases/tag/win22%2F20250224.5
2025-02-27T16:08:17.2009229Z ##[endgroup]
2025-02-27T16:08:17.2010089Z ##[group]Runner Image Provisioner
2025-02-27T16:08:17.2011161Z 2.0.422.1
2025-02-27T16:08:17.2012068Z ##[endgroup]

Is it regression?

https://github.com/joncampbell123/dosbox-x/actions/runs/13529533732/job/37808163739

Expected behavior

Build successfully.

Actual behavior

Build error occurs.

Repro steps

Build source code.

@kishorekumar-anchala
Copy link
Contributor

Hi @maron2000 - Thanks for bringing the issue , we will update you soon on this issue once investigate. thank you !

@RaviAkshintala
Copy link
Contributor

@maron2000
Copy link
Author

@RaviAkshintala
Thank you for looking into this, and yes reverting the targe version to older ones does work.
As a fact reverting to 10.0.22621.0 which is essential for ARM 32bit builds since Microsoft dropped support for it, works for 64bit builds as well.

But should we assume that Microsoft dropped support for the latest Windows version for ARM 64bit?
I don't think so, so I am wondering installing a library that has a critical bug should not be included in the production version of a CI runner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants