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

Windows VS 2022 compilation fails with fresh install #13113

Open
Meerkov opened this issue Dec 23, 2024 · 3 comments
Open

Windows VS 2022 compilation fails with fresh install #13113

Meerkov opened this issue Dec 23, 2024 · 3 comments

Comments

@Meerkov
Copy link
Contributor

Meerkov commented Dec 23, 2024

MAME version

#13112

System information

Windows 11, visual studio 2022, using the VS make instructions with MSYS.

Fresh install following the instructions results in hundreds of warnings, many escalated to errors that prevent compilation.

INI configuration details

No response

Emulated system/software

No response

Incorrect behaviour

Unable to follow VS build instructions from up to date github repo.

Expected behaviour

VS build instructions will compile out of the box without code changes.

Steps to reproduce

  1. Download the build tools
  2. Download the repo
  3. Run the directory rebase tool as needed.
  4. Run make vs2022 (the instructions says make vs2019 however that command no longer exists in the make file)
  5. Open the solution
  6. Build the solution

Result: most (300 or so) succeed, but 25 fail to build.

Additional details

No response

@cuavas
Copy link
Member

cuavas commented Dec 23, 2024

It would help if you provided the actual errors, as well as the exact toolchain and runtime library versions you’re building with.

@Meerkov
Copy link
Contributor Author

Meerkov commented Dec 23, 2024

Using NOWERROR=1 to reduce warning errors (as I see that this is a step I missed), here are some of the errors that still prevent building:

  1. #error: NTDDI_VERSION setting conflicts with _WIN32_WINNT setting
    NTDDI_VERSION shows the version is x06000000 but _WIN32_WINNT is x0602 (expected x0600).

  2. 'devcb_write<int,1>::binder::set': no matching overloaded function found
    In news_r4k.cpp

@pmackinlay
Copy link
Contributor

I have pending changes to MSVC warning settings which overcome most unnecessary warnings; I plan to submit them in a few weeks when I’m back from vacation.

The first error above is addressed by setting the MODERN_WINDOWS_API or some similar build variable, which I believe is in the instructions.

The second issue is an MSVC compiler bug which requires an ABI-breaking change, so eta is unknown. Only solution for now is either modify the source or exclude this driver.

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

No branches or pull requests

3 participants