Need help building Doom64-EX from source

If it's not ZDoom, it goes here.
Post Reply
User avatar
StroggVorbis
Posts: 866
Joined: Wed Nov 08, 2017 4:23 pm
Graphics Processor: nVidia with Vulkan support
Location: Germany

Need help building Doom64-EX from source

Post by StroggVorbis »

Here's the deal:

I wanted to play the latest build of Doom 64 EX, however because the latest binaries were released over 4 years ago, I have no choice but to compile it myself. Problem is, I'm a layman when it comes to such things, in fact I never did this before and it's making me tear my hair out. I followed the instructions step-by-step, at least as far as I could comprehend and I'm starting to become desperate. If anybody here could help me with this, it would be very much appreciated.

Link to the GitHub repo: https://github.com/svkaiser/Doom64EX

Quick rundown of what I've done:
-Downloaded and installed CMake
-Did the same for Visual Studio 2017
-Downloaded Doom64-EX-master, the Win32 dependencies & FluidSynth-Lite
-extracted the dependencies in the extern folder as specified

This is the point where I'm not making any more progress. I tried running CMake from the command line and from the supplied GUI but during generation it either errored out or gave me VS project files without stating anywhere what to do with them. So far I've had no success in seeing it spit out a .lib or .dll.

:(
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Need help building Doom64-EX from source

Post by Graf Zahl »

4 years is not much for binaries. Why can't you use them?
User avatar
StroggVorbis
Posts: 866
Joined: Wed Nov 08, 2017 4:23 pm
Graphics Processor: nVidia with Vulkan support
Location: Germany

Re: Need help building Doom64-EX from source

Post by StroggVorbis »

Put simply, with the latest "stable" release from 2014, v2.5, I experience occasional mouse stutter/jitter, similar to what Nevander once stated. I tried lowering my sensitivity and my polling rate (as far as I know, DPI can't be changed) but to no avail. Strangely, there is a Windows 10 specific fix which consists of newer sdl and sdl_net dlls, but I'm on Win 7 and it didn't work for me. There was also one nightly release of D64EX two years ago, which did fix the mouse stutter (!), but it crashed when trying to load custom maps and the site where it was hosted went offline. That's why I wanted to build from source myself, but as I stated earlier, I have no knowledge whatsoever. I'd be very thankful if somebody could give me some pointers or walk me through the process, since I guess it might be helpful later in my career path I plan to take. Either that or someone might be so kind to compile it for me :)
_mental_
 
 
Posts: 3820
Joined: Sun Aug 07, 2011 4:32 am

Re: Need help building Doom64-EX from source

Post by _mental_ »

DabbingSquidward wrote:gave me VS project files without stating anywhere what to do with them.
How about opening generated solution and build it? Recent versions of CMake GUI even has a button for the first step.
DabbingSquidward wrote:I guess it might be helpful later in my career path I plan to take.
Apparently, you will need advanced googling skills. Why not starting with searching how to open and build Visual Studio solution?
User avatar
StroggVorbis
Posts: 866
Joined: Wed Nov 08, 2017 4:23 pm
Graphics Processor: nVidia with Vulkan support
Location: Germany

Re: Need help building Doom64-EX from source

Post by StroggVorbis »

Quoted from https://github.com/Doom64/fluidsynth-lite:
Compiling

CMake is the only build tool that is supported -- all others have been removed. Make sure you have at least version 2.6.3, and that cmake can be found in the PATH environment variable.

Download the source code for this project, extract it (if applicable), and navigate to it. Then just run cmake:

$ cmake . # Generate build files in the current directory
$ cmake --build . # Compile the project
By default, this will compile a libfluidsynth.a on Linux and fluidsynth.lib on Windows.

It's also possible to use CMake-GUI.
I used the GUI, clicked on Configure, selected Visual Studio 15 2017 as generator, left the optional toolset -t parameter blank, chose "Use default native compilers" from the list of radio buttons and then clicked on Generate.

Here's the output I got:
Spoiler:
I then clicked on Open Project, then under Project -> Properties I first set it to build a .lib and then a .dll.
Then I went to Build -> Build Solution and it output a libfluidsynth.dll and .lib, even though the GitHub repo states, it should only be called fluidsynth, so I renamed them.
Then I moved them together with the contents from the dependencies archive into the doom64ex-master/extern folder as specified.
After that I tried generating MSVC files of Doom64EX with CMake, and got this output:
Spoiler:
So I downloaded Git, opened BASH in the directory, entered
"git submodule --init --recursive"
only for it to respond with "fatal: not a git repository (or any of the parent directories): .git"

This is where I'm drawing the line. I have no idea what I'm doing. I tried everything I could, but I assume I made a completely wrong approach. I'm eager to learn and try out new things, but apparently I'm too stupid for this stuff.
If nobody wants to help me, I'm giving up.

Edit: Compiling instructions for Doom 64 EX:
Compiling on Windows
Download and install CMAKE. Follow the instructions on the website and make sure to update the system. Clone the repository in a suitable place to build the program.

Next, download the Win32 Dependencies. Extract the archive into the extern directory. Also remember to clone fluidsynth-lite and generate the .lib and .dll files. Place these in extern\lib and extern\bin, respectively.

Next, generate the MSVC project files.

$ mkdir build # Create a build directory within the git repo
$ cd build # Change into the new directory
$ cmake .. -G "Visual Studio 15 2017" # Generate MSVC 2017 files
Visual Studio 2017 project files will now be sitting in the build directory.
Post Reply

Return to “Off-Topic”