It appears that the script located in
mk/windoze/CopyWindowsRuntimeDlls_2010.bat (which the readme describes as necessary for running the program) is outdated.
First of all, either the readme is missing crucial information about how to run this script or all the paths are wrong. It should be copying files to the
data/glest_game directory, but instead copies to the current directory. Strangely enough, there's commented out lines (for obviously outdated DLLs) that have the right path. It's the active lines that have the wrong paths.
Anyway, even after manually copying over all the files, the program doesn't run. It appears that not all libraries are included. I
think it was just the 7zip stuff that was missing (although I actually copied all the DLLs and the
plugins and
lua folder from my install of 3.9.0).
As an aside, I also have two related observations:
- The error messages when the program was started with missing libraries is very bad. It basically says "MegaGlest encountered an error and must close, send us this dmp that you can't read" instead of a more ideal notification about the exact libraries that are missing. It seems that *some* libraries do have better error messages (I initially forgot to copy DLLs and received an error about missing libvlc).
- In mk/windoze/CopyWindowsRuntimeDlls_2010.bat, there's some copy operations that are only performed if a file does not already exist. IMO, this is not an ideal approach. What if the libraries need to be updated in the future? Not overwriting the files would fail to update them properly.
- The commented out lines (that start with rem) should probably be removed. They hold no current value and made me originally question if these files were supposed to be copied too (ie, they're confusing to the reader). All those files aren't used anymore, and most don't even exist in the windows deps package.
This is relevant as per the develop branch at rev
31def0dc1a.