Skip to content

(working) native Linux build #1

Open
@MyUsernamee

Description

@MyUsernamee

Build on Linux

I am only making this issue because I am bad at remembering what where I was on a project 💀

Goal

The goal is to get a build working on linux and then later create a github action to do so, but currently there are a number of issues.

Current Progress

All current progress I've done so far is on this fork

Up to this point this is what I have done:
Everything done so far is done in WSL Ubuntu

            .-/+oossssoo+/-.
        `:+ssssssssssssssssss+:`
      -+ssssssssssssssssssyyssss+-
    .ossssssssssssssssssdMMMNysssso.
   /ssssssssssshdmmNNmmyNMMMMhssssss/
  +ssssssssshmydMMMMMMMNddddyssssssss+
 /sssssssshNMMMyhhyyyyhmNMMMNhssssssss/
.ssssssssdMMMNhsssssssssshNMMMdssssssss.
+sssshhhyNMMNyssssssssssssyNMMMysssssss+
ossyNMMMNyMMhsssssssssssssshmmmhssssssso   
ossyNMMMNyMMhsssssssssssssshmmmhssssssso   ------------------------------- 
+sssshhhyNMMNyssssssssssssyNMMMysssssss+   OS: Ubuntu 22.04.3 LTS on Windows 10 x86_64 
.ssssssssdMMMNhsssssssssshNMMMdssssssss.   Kernel: 5.15.133.1-microsoft-standard-WSL2 
 /sssssssshNMMMyhhyyyyhdNMMMNhssssssss/    Uptime: 1 day, 34 mins 
  +sssssssssdmydMMMMMMMMddddyssssssss+     Packages: 582 (dpkg), 7 (snap) 
   /ssssssssssshdmNNNNmyNMMMMhssssss/      Shell: bash 5.1.16 
    .ossssssssssssssssssdMMMNysssso.       Terminal: vscode 
      -+sssssssssssssssssyyyssss+-         CPU: Intel i5-10400F (12) @ 2.904GHz 
        `:+ssssssssssssssssss+:`           GPU: 6191:00:00.0 Microsoft Corporation Device 008e 
            .-/+oossssoo+/-.               Memory: 1049MiB / 11923MiB 

I downloaded premake5 from here (Premake 5.0.0 beta2) and placed it in the gwater2/binary folder

I then ran these commands to get things started:

./premake5 --os=linux
make config=release_x86_64 all

Running those yielded this issue:

==== Building gmcl_gwater2 (release_x86_64) ====
Creating x86_64/Release/intermediate/gmcl_gwater2
BSPParser.cpp
BSPParser/BSPParser.cpp: In member function ‘bool BSPMap::ParseGameLumps()’:
BSPParser/BSPParser.cpp:57:57: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
   57 |   *pGameLumpHeader * sizeof(GameLump) + sizeof(int32_t) > mpHeader->lumps[static_cast<size_t>(LUMP::GAME_LUMP)].length
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:63:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
   63 |  for (int i = 0; i < mNumGameLumps; i++) {
      |                  ~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp: In member function ‘bool BSPMap::CalcUVs(int16_t, const BSPStructs::Vector*, float*) const’:
BSPParser/BSPParser.cpp:150:35: warning: comparison of integer expressions of different signedness: ‘const int16_t’ {aka ‘const short int’} and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
  150 |  if (texInfoIdx < 0 || texInfoIdx > mNumTexInfos) return false;
      |                        ~~~~~~~~~~~^~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:153:49: warning: comparison of integer expressions of different signedness: ‘const int32_t’ {aka ‘const int’} and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
  153 |  if (pTexInfo->texData < 0 || pTexInfo->texData >= mNumTexDatas) return false;
      |                               ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp: In member function ‘bool BSPMap::GetSurfEdgeVerts(int32_t, BSPStructs::Vector*, BSPStructs::Vector*) const’:
BSPParser/BSPParser.cpp:170:25: warning: comparison of integer expressions of different signedness: ‘const int32_t’ {aka ‘const int’} and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
  170 |  if (index < 0 || index >= mNumSurfEdges) return false;
      |                   ~~~~~~^~~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:182:2: error: ‘memcpy’ was not declared in this scope
  182 |  memcpy(pVertA, mpVertices + iA, sizeof(Vector));
      |  ^~~~~~
BSPParser/BSPParser.cpp:8:1: note: ‘memcpy’ is defined in header ‘<cstring>; did you forget to ‘#include <cstring>’?
    7 | #include <cmath>
  +++ |+#include <cstring>
    8 | #include <stdexcept>
BSPParser/BSPParser.cpp: In member function ‘bool BSPMap::Triangulate()’:
BSPParser/BSPParser.cpp:203:28: warning: comparison of integer expressions of different signedness: ‘int16_t’ {aka ‘short int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  203 |   if (texIdx < 0 || texIdx >= mNumTexInfos) continue;
      |                     ~~~~~~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:209:16: warning: comparison of integer expressions of different signedness: ‘int16_t’ {aka ‘short int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  209 |    if (dispIdx >= mNumDispInfos) return false;
      |        ~~~~~~~~^~~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:241:32: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  241 |  for (int dispIdx = 0; dispIdx < mNumDispInfos; dispIdx++) {
      |                        ~~~~~~~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:244:11: warning: unused variable ‘size’ [-Wunused-variable]
  244 |   int32_t size = 1 << pDispInfo->power;
      |           ^~~~
BSPParser/BSPParser.cpp:341:28: warning: comparison of integer expressions of different signedness: ‘int16_t’ {aka ‘short int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  341 |   if (texIdx < 0 || texIdx >= mNumTexInfos) continue;
      |                     ~~~~~~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:373:5: error: ‘memcpy’ was not declared in this scope
  373 |     memcpy(uv0, rootUV, 2U * sizeof(float));
      |     ^~~~~~
BSPParser/BSPParser.cpp:373:5: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
BSPParser/BSPParser.cpp:461:7: error: ‘memcpy’ was not declared in this scope
  461 |       memcpy(uv0, disp.uvs + i0 * 2, sizeof(float) * 2);
      |       ^~~~~~
BSPParser/BSPParser.cpp:461:7: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
BSPParser/BSPParser.cpp: In constructor ‘BSPMap::BSPMap(const uint8_t*, size_t, bool)’:
BSPParser/BSPParser.cpp:515:2: error: ‘memcpy’ was not declared in this scope
  515 |  memcpy(mpData, pFileData, dataSize);
      |  ^~~~~~
BSPParser/BSPParser.cpp:515:2: note: ‘memcpy’ is defined in header ‘<cstring>’; did you forget to ‘#include <cstring>’?
BSPParser/BSPParser.cpp: In member function ‘BSPTexture BSPMap::GetTexture(int16_t) const’:
BSPParser/BSPParser.cpp:575:25: warning: comparison of integer expressions of different signedness: ‘const int16_t’ {aka ‘const short int’} and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
  575 |  if (index < 0 || index >= mNumTexInfos)
      |                   ~~~~~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:580:49: warning: comparison of integer expressions of different signedness: ‘const int32_t’ {aka ‘const int’} and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
  580 |  if (pTexInfo->texData < 0 || pTexInfo->texData >= mNumTexDatas)
      |                               ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
BSPParser/BSPParser.cpp:586:31: warning: comparison of integer expressions of different signedness: ‘const int32_t’ {aka ‘const int’} and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
  586 |   pTexData->nameStringTableId >= mNumTexDataStringTableEntries
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from BSPParser/BSPParser.cpp:1:
BSPParser/BSPParser.h: In instantiation of ‘bool BSPMap::ParseStaticPropLump(const BSPStructs::GameLump&, const StaticProp**) [with StaticProp = BSPStructs::StaticPropV4]’:
BSPParser/BSPParser.cpp:72:62:   required from here
BSPParser/BSPParser.h:123:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  123 |    gameLump.offset + gameLump.length > mDataSize
      |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
BSPParser/BSPParser.h:127:21: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  127 |   if (totalLumpSize > gameLump.length) return false; // Game lump size is corrupted
      |       ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:136:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  136 |    totalLumpSize > gameLump.length
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:152:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  152 |    totalLumpSize > gameLump.length
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:167:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  167 |    totalLumpSize != gameLump.length // Use != here as we want to make sure we've read exactly the amount of data the lump was meant to have
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h: In instantiation of ‘bool BSPMap::ParseStaticPropLump(const BSPStructs::GameLump&, const StaticProp**) [with StaticProp = BSPStructs::StaticPropV5]’:
BSPParser/BSPParser.cpp:75:62:   required from here
BSPParser/BSPParser.h:123:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  123 |    gameLump.offset + gameLump.length > mDataSize
      |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
BSPParser/BSPParser.h:127:21: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  127 |   if (totalLumpSize > gameLump.length) return false; // Game lump size is corrupted
      |       ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:136:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  136 |    totalLumpSize > gameLump.length
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:152:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  152 |    totalLumpSize > gameLump.length
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:167:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  167 |    totalLumpSize != gameLump.length // Use != here as we want to make sure we've read exactly the amount of data the lump was meant to have
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h: In instantiation of ‘bool BSPMap::ParseStaticPropLump(const BSPStructs::GameLump&, const StaticProp**) [with StaticProp = BSPStructs::StaticPropV6]’:
BSPParser/BSPParser.cpp:78:62:   required from here
BSPParser/BSPParser.h:123:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  123 |    gameLump.offset + gameLump.length > mDataSize
      |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
BSPParser/BSPParser.h:127:21: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  127 |   if (totalLumpSize > gameLump.length) return false; // Game lump size is corrupted
      |       ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:136:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  136 |    totalLumpSize > gameLump.length
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:152:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  152 |    totalLumpSize > gameLump.length
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
BSPParser/BSPParser.h:167:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int32_t’ {aka ‘const int’} [-Wsign-compare]
  167 |    totalLumpSize != gameLump.length // Use != here as we want to make sure we've read exactly the amount of data the lump was meant to have
      |    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
In file included from BSPParser/BSPParser.cpp:4:
BSPParser/Displacements/Displacements.h: At global scope:
BSPParser/Displacements/Displacements.h:23:13: warning: ‘Displacements::g_EdgeDims’ defined but not used [-Wunused-variable]
   23 |  static int g_EdgeDims[4] =
      |             ^~~~~~~~~~
make[1]: *** [gmcl_gwater2.make:199: x86_64/Release/intermediate/gmcl_gwater2/BSPParser.o] Error 1
make: *** [Makefile:73: gmcl_gwater2] Error 2

It appears to be an error with BSPParser, which I belive was patched but for some reason isn't working.
This is due to a old commit having issues simply updating the repo should fix this.

Doing so by running:

rm -rf ./BSPParser
git clone --recursive https://github.com/Derpius/BSPParser.git

And rebuilding with the previous make command made this:

In file included from BSPParser/FileFormat/Structs.h:5,
                 from BSPParser/Displacements/Displacements.h:7,
                 from BSPParser/Displacements/Displacements.cpp:1:
BSPParser/FileFormat/Limits.h:7:12: error: ‘size_t’ does not name a type
    7 |  constexpr size_t MIN_MAP_DISP_POWER = 2;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:1:1: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
  +++ |+#include <cstddef>
    1 | #pragma once
BSPParser/FileFormat/Limits.h:8:12: error: ‘size_t’ does not name a type
    8 |  constexpr size_t MAX_MAP_DISP_POWER = 4;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:8:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:11:12: error: ‘size_t’ does not name a type
   11 |  constexpr size_t MAX_DISP_CORNER_NEIGHBORS = 4;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:11:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:16:12: error: ‘size_t’ does not name a type
   16 |  constexpr size_t MAX_MAP_MODELS               = 1024;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:16:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:17:12: error: ‘size_t’ does not name a type
   17 |  constexpr size_t MAX_MAP_BRUSHES              = 8192;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:17:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:18:12: error: ‘size_t’ does not name a type
   18 |  constexpr size_t MAX_MAP_ENTITIES             = 8192;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:18:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:19:12: error: ‘size_t’ does not name a type
   19 |  constexpr size_t MAX_MAP_TEXINFO              = 12288;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:19:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:20:12: error: ‘size_t’ does not name a type
   20 |  constexpr size_t MAX_MAP_TEXDATA              = 2048;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:20:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:21:12: error: ‘size_t’ does not name a type
   21 |  constexpr size_t MAX_MAP_DISPINFO             = 2048;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:21:12: note: ‘size_t’ is defined in header ‘<cstddef>; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:22:12: error: ‘size_t’ does not name a type
   22 |  constexpr size_t MAX_MAP_DISP_VERTS           = MAX_MAP_DISPINFO * ((1 << MAX_MAP_DISP_POWER) + 1) * ((1 << MAX_MAP_DISP_POWER) + 1);
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:22:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
In file included from BSPParser/FileFormat/Structs.h:5,
                 from BSPParser/Displacements/Displacements.h:7,
                 from BSPParser/Displacements/Displacements.cpp:1:
BSPParser/FileFormat/Limits.h:23:12: error: ‘size_t’ does not name a type
   23 |  constexpr size_t MAX_MAP_DISP_TRIS            = (1 << MAX_MAP_DISP_POWER) * (1 << MAX_MAP_DISP_POWER) * 2;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:23:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:24:12: error: ‘size_t’ does not name a type
   24 |  constexpr size_t MAX_DISPVERTS                = NUM_DISP_POWER_VERTS(MAX_MAP_DISP_POWER);
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:24:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:25:12: error: ‘size_t’ does not name a type
   25 |  constexpr size_t MAX_DISPTRIS                 = NUM_DISP_POWER_TRIS(MAX_MAP_DISP_POWER);
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:25:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:26:12: error: ‘size_t’ does not name a type
   26 |  constexpr size_t MAX_MAP_AREAS                = 256;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:26:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:27:12: error: ‘size_t’ does not name a type
   27 |  constexpr size_t MAX_MAP_AREA_BYTES           = MAX_MAP_AREAS / 8;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:27:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:28:12: error: ‘size_t’ does not name a type
   28 |  constexpr size_t MAX_MAP_AREAPORTALS          = 1024;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:28:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:29:12: error: ‘size_t’ does not name a type
   29 |  constexpr size_t MAX_MAP_PLANES               = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:29:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:30:12: error: ‘size_t’ does not name a type
   30 |  constexpr size_t MAX_MAP_NODES                = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:30:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:31:12: error: ‘size_t’ does not name a type
   31 |  constexpr size_t MAX_MAP_BRUSHSIDES           = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:31:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:32:12: error: ‘size_t’ does not name a type
   32 |  constexpr size_t MAX_MAP_LEAFS                = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:32:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:33:12: error: ‘size_t’ does not name a type
   33 |  constexpr size_t MAX_MAP_VERTS                = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:33:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:34:12: error: ‘size_t’ does not name a type
   34 |  constexpr size_t MAX_MAP_VERTNORMALS          = 256000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:34:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:35:12: error: ‘size_t’ does not name a type
   35 |  constexpr size_t MAX_MAP_VERTNORMALINDICES    = 256000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:35:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:36:12: error: ‘size_t’ does not name a type
   36 |  constexpr size_t MAX_MAP_FACES                = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:36:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:37:12: error: ‘size_t’ does not name a type
   37 |  constexpr size_t MAX_MAP_LEAFFACES            = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:37:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:38:12: error: ‘size_t’ does not name a type
   38 |  constexpr size_t MAX_MAP_LEAFBRUSHES          = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:38:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:39:12: error: ‘size_t’ does not name a type
   39 |  constexpr size_t MAX_MAP_PORTALS              = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:39:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:40:12: error: ‘size_t’ does not name a type
   40 |  constexpr size_t MAX_MAP_CLUSTERS             = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:40:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:41:12: error: ‘size_t’ does not name a type
   41 |  constexpr size_t MAX_MAP_LEAFWATERDATA        = 32768;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:41:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:42:12: error: ‘size_t’ does not name a type
   42 |  constexpr size_t MAX_MAP_PORTALVERTS          = 128000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:42:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:43:12: error: ‘size_t’ does not name a type
   43 |  constexpr size_t MAX_MAP_EDGES                = 256000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:43:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:44:12: error: ‘size_t’ does not name a type
   44 |  constexpr size_t MAX_MAP_SURFEDGES            = 512000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:44:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:45:12: error: ‘size_t’ does not name a type
   45 |  constexpr size_t MAX_MAP_LIGHTING             = 0x1000000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:45:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:46:12: error: ‘size_t’ does not name a type
   46 |  constexpr size_t MAX_MAP_VISIBILITY           = 0x1000000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:46:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:47:12: error: ‘size_t’ does not name a type
   47 |  constexpr size_t MAX_MAP_TEXTURES             = 1024;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:47:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:48:12: error: ‘size_t’ does not name a type
   48 |  constexpr size_t MAX_MAP_WORLDLIGHTS          = 8192;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:48:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:49:12: error: ‘size_t’ does not name a type
   49 |  constexpr size_t MAX_MAP_CUBEMAPSAMPLES       = 1024;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:49:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:50:12: error: ‘size_t’ does not name a type
   50 |  constexpr size_t MAX_MAP_OVERLAYS             = 512;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:50:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:51:12: error: ‘size_t’ does not name a type
   51 |  constexpr size_t MAX_MAP_WATEROVERLAYS        = 16384;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:51:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:52:12: error: ‘size_t’ does not name a type
   52 |  constexpr size_t MAX_MAP_TEXDATA_STRING_DATA  = 256000;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:52:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:53:12: error: ‘size_t’ does not name a type
   53 |  constexpr size_t MAX_MAP_TEXDATA_STRING_TABLE = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:53:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:54:12: error: ‘size_t’ does not name a type
   54 |  constexpr size_t MAX_MAP_PRIMITIVES           = 32768;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:54:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:55:12: error: ‘size_t’ does not name a type
   55 |  constexpr size_t MAX_MAP_PRIMVERTS            = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:55:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
BSPParser/FileFormat/Limits.h:56:12: error: ‘size_t’ does not name a type
   56 |  constexpr size_t MAX_MAP_PRIMINDICES          = 65536;
      |            ^~~~~~
BSPParser/FileFormat/Limits.h:56:12: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
In file included from BSPParser/Displacements/Displacements.h:7,
                 from BSPParser/Displacements/Displacements.cpp:1:
BSPParser/FileFormat/Structs.h:10:12: error: ‘size_t’ does not name a type
   10 |  constexpr size_t HEADER_LUMPS = 64;
      |            ^~~~~~
BSPParser/FileFormat/Structs.h:7:1: note: ‘size_t’ is defined in header ‘<cstddef>’; did you forget to ‘#include <cstddef>’?
    6 | #include "Enums.h"
  +++ |+#include <cstddef>
    7 | 
BSPParser/FileFormat/Structs.h:102:14: error: ‘HEADER_LUMPS’ was not declared in this scope
  102 |   Lump lumps[HEADER_LUMPS]; // Lump directory
      |              ^~~~~~~~~~~~
BSPParser/FileFormat/Structs.h:205:23: error: ‘MAX_DISP_CORNER_NEIGHBORS’ was not declared in this scope
  205 |   uint16_t neighbours[MAX_DISP_CORNER_NEIGHBORS];
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from BSPParser/Displacements/Displacements.cpp:1:
BSPParser/Displacements/Displacements.h:23:13: warning: ‘Displacements::g_EdgeDims’ defined but not used [-Wunused-variable]
   23 |  static int g_EdgeDims[4] =
      |             ^~~~~~~~~~
make[1]: *** [gmcl_gwater2.make:202: x86_64/Release/intermediate/gmcl_gwater2/Displacements.o] Error 1
make: *** [Makefile:73: gmcl_gwater2] Error 2

After adding the line mentioned in the error to Limits.h we are now at the original issue:

In file included from garrysmod_common/sourcesdk-minimal/public/materialsystem/IShader.h:35,
                 from garrysmod_common/sourcesdk-minimal/public/shaderlib/BaseShader.h:16,
                 from src/BaseShader.cpp:7:
garrysmod_common/sourcesdk-minimal/public/materialsystem/imaterialsystem.h:26:10: fatal error: appframework/IAppSystem.h: No such file or directory
   26 | #include "appframework/IAppSystem.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [gmcl_gwater2.make:229: x86_64/Release/intermediate/gmcl_gwater2/BaseShader.o] Error 1
make: *** [Makefile:73: gmcl_gwater2] Error 2

It seems that right now this has to do with how gcc / linux handles caps when it comes to includes, but there is a version of garrys mod common that fixed this supposedly, but it doesn't seem like this branch support 64 bit which is requried.

The closest issue I could find with similar error was this one: Issue

So I am going to see if maybe the other branch on garrysmod_common does support 64 bit

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions