Hey !
I am rebuilding the dll to have some specific features in a recent branch of pulse (features/ventilator-update). I wanted to share a bug I found, and the solution to fix it.
I am compiling with Visual Studio 2022 (x64 native compiler) on windows 11. My protobuf version is 23,7 i.e. the latest LTS. Ive been able to generate the solution with CMake without problem. However, when trying to build this solution, I get an error related to protobuf.
In fact, it is related to a change in windows that makes several variables not anymore “compatible” :
- Issues · grpc/grpc · GitHub upb_message_lib (message.c) cannot compile with VS: initializer is not a constant
- Sign in to GitHub · GitHub Fixed
NAN
/INFINITY
definitions to work on Windows 11 SDK.
The fix has not been pushed to event the 28.0 RC2.0 that is the latest non lts version. It has been merged 2 weeks ago, but no tag include it ([upb] Fixed NAN/INFINITY definitions to work on Windows 11 SDK by Cheney-W · Pull Request #40039 · microsoft/vcpkg · GitHub)
So, I manually update the message.c script (path: …\External\protobuf\src\upb\message\internal\message.c), what solved the problem… but it is really manual ; lets hope it will be fixed soon in protobuf directly.
Cheers!