User avatar
stunstall
Posts: 10
Joined: Sun Apr 09, 2017 1:10 pm

Building MAME with Visual Studio 2022

Hello
I have the following setup:

Windows 11, Visual Studio 2022 Community, 64GB of RAM.

I have installed Mingw64 and used pacman to add the following; Python, GCC, mingwMake.

I then used MingGWMake to make a VS2022 version of the latest pulled source code.

I get the following errors when I build the generated VS solution:


Severity Code Description Project File Line Suppression State Details
Error C7555 use of designated initializers requires at least '/std:c++20' oberheim C:\Users\scott\source\repos\mame\src\mame\oberheim\dmx.cpp 251
Error C2672 'devcb_write<int,1>::binder::set': no matching overloaded function found sony C:\Users\scott\source\repos\mame\src\mame\sony\news_r4k.cpp 447
Error C1189 #error: NTDDI_VERSION setting conflicts with _WIN32_WINNT setting osd_windows C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\shared\sdkddkver.h 298
Error C2440 '<function-style-cast>': cannot convert from 'nullptr' to 'uintptr_t' optional C:\Users\scott\source\repos\mame\src\devices\cpu\drcbeut.h 172

(Amongst others)


My questions are:

1. How do I fix the NTDDI_VERSION error? I don't want to install another SDK unless I absolutely have to.
2. wrt to error C2672: is there anything I can install that makes Visual Studio 2022 C++ impl compatible?
2. Why do some projects need C++ 20 and yet the others are C++ 14 (which I believe is VS 2022's default) ? Do you get the same errors building with Linux?

Thanks in advance.

Return to “MAME Discussion”