All right, I am cutting corners to get this game to compile for Windows. Microsoft Visual Studio is giving me some errors that I simply cannot understand, and their documentation is absolutely uninformative in actually finding the problem. I am going to make something that compiles (if it's even possible), and post the shortcuts that I am making and where in the code they are. Perhaps somebody with a better understanding of the vagaries of Microsoft can explain their arcane reasons for refusing to compile.
Problem #1
Location: shop.cpp, line 142, and again on line 282
Error: mem_fun() and not1() undefined
Discussion: they're undefined symbols, defined nowhere else in the LCS code. For some reason, the Unix compiler (gcc) is able to compile them anyway, so I would guess that they're in the Unix C libraries that come with gcc but aren't in Visual Studio's libraries.
Temporary solution: They do not appear to do anything needed for the game, so I commented them out.
Problem #2
Locations: monthly.cpp line 672 and titlescreen.cpp line 615
Error: unresolved external symbol "void __cdecl TVRecordMonth(void)" (?TVRecordMonth@@YAXXZ)
Discussion: this is one that I cannot solve. The function TVRecordMonth() prints a record of everyone in the LCS and of the overall status of the game to a text file, so that it can be tracked (or used by other as-yet-unwritten software) to record the relative progress of the LCS over time. This is a void function defined in tvrecord.cpp in /monthly, a new file added to the game, but is otherwise identical to many other void functions that generate no errors (and making the function other than void doesn't help).
Temporary solution: I commented out the calls in titlescreen.cpp and monthly.cpp. This function does not affect gameplay at this time, but I am worried about what would happen if it did!
Problem #3 NEEDS HELP!
Location: SDL2main.lib (wherever that is!)
Error: unresolved external symbol _imp__iob_func referenced in function _ShowError
Discussion: Doing some internet searches, I have managed to determine that this error is caused by Microsoft Visual Studio 2015 redefining the standard input and output relative to earlier versions. It is not in the LCS code. Many people are having the same issue, but there is no answer online that I have been able to find that explains where you need to go or what the code is that will fix this.