http://kcat.strangesoft.net/linux.patch (I can't upload it here since it keeps crashing my browser when I try)
When run, I get a bunch of shader warnings/errors:
Code: Select all
(0) : fatal error C9999: Bad scope in ConvertLocalReferences()
Moderator: Graf Zahl
Code: Select all
(0) : fatal error C9999: Bad scope in ConvertLocalReferences()
All you need is Mesa-devel >= 7.3. Since most systems do not use the include files provided by Nvidia (only their libGL.so), there is nothing you need to do w.r.t. nvidia.Chris wrote:Here's a patch to fix GZDoom to compile on Linux. However, there was one issue external to GZDoom that I needed to fix. On my system, the default glext.h header was a bit out of date and didn't include a number of typedefs. I switched it out for nVidia's, however it seems to have a bug that doesn't define the prototypes for glMapBufferRange/PFNGLMAPBUFFERRANGEPROC properly (it declares them to return void, not void*). I fixed that on my machine, and it built. I'll report the header problem to nVidia, if no one else has yet.
Code: Select all
Linking CXX executable ../gzdoom
CMakeFiles/zdoom.dir/tempfiles.o: In function `FTempFileName::FTempFileName(char const*)':
tempfiles.cpp:(.text+0x73): warning: the use of `tempnam' is dangerous, better use `mkstemp'
CMakeFiles/zdoom.dir/gl/renderer/gl_renderer.o: In function `FGLRenderer::~FGLRenderer()':
gl_renderer.cpp:(.text+0xfbc): undefined reference to `FLightBuffer::~FLightBuffer()'
CMakeFiles/zdoom.dir/gl/renderer/gl_renderer.o: In function `FGLRenderer::~FGLRenderer()':
gl_renderer.cpp:(.text+0x107c): undefined reference to `FLightBuffer::~FLightBuffer()'
CMakeFiles/zdoom.dir/gl/renderer/gl_renderer.o: In function `FGLRenderer::Initialize()':
gl_renderer.cpp:(.text+0x11d0): undefined reference to `FLightBuffer::FLightBuffer()'
CMakeFiles/zdoom.dir/gl/scene/gl_walls.o: In function `GLWall::CollectLights()':
gl_walls.cpp:(.text+0x174): undefined reference to `FLightBuffer::AddLight(ADynamicLight*, bool)'
collect2: ld returned 1 exit status
make[2]: *** [gzdoom] Error 1