Does anyone build 64-bit Cuberite using VS 2017? I can't seem to make it work, cmake is writing weird flags into the project files etc.
Did you tried a clean clone? Had tred to build a project from 2015 in 2017 and didn't worked too. With a clean clone it worked.
I'm working from a clean clone. It seems that CMake doesn't generate some of the flags for MSVC - the optimizations are turned on for Debug builds, C++ exceptions are turned off, runtime libraries not set (except for SQLiteCpp, which I assume sets them explicitly).
If you do a "cmake --version", what do you get? I had 3.7.1, it didn't recognize VS2017, so I installed the newest currently available, 3.8.2, now it recognizes the VS version but writes weird configuration.
Note that on another computer I'm using VS2017 for 32-bit builds without any problems at all. It's just 64-bit builds.
I have cmake 3.8.0. Did you do cmake -G "Visual Studio 15 2017 Win64" in the directory?
Pulled a clean clone, installed cmake 3.8.2 and checked that visual studio was updated. After fixing Leakfinder it compiles fine on my side.
Weird, it seems to be working now.
Oh dear, it seems I've broken VS2013 on Cuberite's sources
Code:
src\Bindings\ManualBindings_World.cpp(641): fatal error C1001: An internal error has occurred in the compiler.
(compiler file 'f:\dd\vctools\compiler\cxxfe\sl\p1\c\trees.h', line 699)
To work around this problem, try simplifying or changing the program near the locations listed above.
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information
What do I do now? It's not like it's some super-template-heavy code, just another function pointer with a nullptr default for the DoWithXYZ() bindings...