RobertBeckebans / RBDOOM-3-BFG

Doom 3 BFG Edition source port with updated DX12 / Vulkan renderer and modern game engine features
https://www.moddb.com/mods/rbdoom-3-bfg
GNU General Public License v3.0
1.48k stars 253 forks source link

Failed to compile with system Zlib header in Fedora 40 #913

Closed runlevel5 closed 4 months ago

runlevel5 commented 4 months ago
$ mkdir build
$ cd build
$ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=ReleaseWithDeb -DUSE_SYSTEM_ZLIB=ON -DUSE_SYSTEM_RAPIDJSON=ON  -DONATIVE=ON -DFFMPEG=ON -DBINKDEC=OFF ../neo
$ make -j384

/usr/include/zlib.h:1842:1: error: ‘Z_EXTERN’ does not name a type; did you mean ‘ZEXTERN’?
 1842 | Z_EXTERN int              Z_EXPORT inflateUndermine (z_stream *, int);
      | ^~~~~~~~
      | ZEXTERN
/usr/include/zlib.h:1843:1: error: ‘Z_EXTERN’ does not name a type; did you mean ‘ZEXTERN’?
 1843 | Z_EXTERN int              Z_EXPORT inflateValidate  (z_stream *, int);
      | ^~~~~~~~
      | ZEXTERN
/usr/include/zlib.h:1844:1: error: ‘Z_EXTERN’ does not name a type; did you mean ‘ZEXTERN’?
 1844 | Z_EXTERN unsigned long    Z_EXPORT inflateCodesUsed (z_stream *);
      | ^~~~~~~~
      | ZEXTERN
/usr/include/zlib.h:1845:1: error: ‘Z_EXTERN’ does not name a type; did you mean ‘ZEXTERN’?
 1845 | Z_EXTERN int              Z_EXPORT inflateResetKeep (z_stream *);
      | ^~~~~~~~
      | ZEXTERN
/usr/include/zlib.h:1846:1: error: ‘Z_EXTERN’ does not name a type; did you mean ‘ZEXTERN’?
 1846 | Z_EXTERN int              Z_EXPORT deflateResetKeep (z_stream *);
      | ^~~~~~~~
      | ZEXTERN
/usr/include/zlib.h:1852:1: error: ‘Z_EXTERN’ does not name a type; did you mean ‘ZEXTERN’?
 1852 | Z_EXTERN int Z_EXPORTVA gzvprintf(gzFile file, const char *format, va_list va);
      | ^~~~~~~~
      | ZEXTERN

$ sudo dnf info zlib-ng-devel
[sudo] password for tle: 
Last metadata expiration check: 0:12:12 ago on Fri 19 Jul 2024 23:36:35.
Installed Packages
Name         : zlib-ng-devel
Version      : 2.1.7
Release      : 1.fc40
Architecture : ppc64le
Size         : 104 k
Source       : zlib-ng-2.1.7-1.fc40.src.rpm
Repository   : @System
From repo    : updates
Summary      : Development files for zlib-ng
URL          : https://github.com/zlib-ng/zlib-ng
License      : Zlib
Description  : The zlib-ng-devel package contains libraries and header files for developing
             : application that use zlib-ng.

I think the CMakeLists.txt is not configured correctly. From my understanding the error is caused by the missing zconf.h.

RobertBeckebans commented 4 months ago

I probably will replace the entire crap with miniz from ValveSoftware like Dhewm3 did. For now I just fixed the new rbdmap target.