minecraft-weekend icon indicating copy to clipboard operation
minecraft-weekend copied to clipboard

Error compiling

Open filipemd opened this issue 2 years ago • 7 comments

Im using Intel MacOS Sonoma.

~/Documents/minecraft-weekend/lib/cglm/src/vec4.c:127:25: error: argument 'v' of type 'vec4' (aka 'float[4]') with mismatched bound [-Werror,-Warray-parameter]
glmc_vec4_scale_as(vec4 v, float s, vec4 dest) {
                        ^
~/Documents/minecraft-weekend/lib/cglm/src/../include/cglm/call/vec4.h:102:25: note: previously declared as 'vec3' (aka 'float[3]') here
glmc_vec4_scale_as(vec3 v, float s, vec3 dest);
                        ^
~/Documents/minecraft-weekend/lib/cglm/src/vec4.c:127:42: error: argument 'dest' of type 'vec4' (aka 'float[4]') with mismatched bound [-Werror,-Warray-parameter]
glmc_vec4_scale_as(vec4 v, float s, vec4 dest) {
                                         ^
~/Documents/minecraft-weekend/lib/cglm/src/../include/cglm/call/vec4.h:102:42: note: previously declared as 'vec3' (aka 'float[3]') here
glmc_vec4_scale_as(vec3 v, float s, vec3 dest);
                                         ^
2 errors generated.
make[3]: *** [CMakeFiles/cglm.dir/src/vec4.c.o] Error 1
make[2]: *** [CMakeFiles/cglm.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [libs] Error 2

filipemd avatar Nov 11 '23 18:11 filipemd

Its some sort of cmake error, in the repository only make is supported so its a linking error where cglm has been linked multiple times prob

djxza avatar Nov 14 '23 22:11 djxza

Any updates on this issue? I have ran into the same error and am stuck.

Running Sonoma as well.

Does anyone know what is meant by mismatched bound?

san475 avatar Nov 25 '23 18:11 san475

Removing -Werror from line 36 of the /lib/cglm/CMakeLists.txt file and re-running cmake on it seems to have allowed me to compile the game, though I doubt it's a best practice.

san475 avatar Nov 25 '23 18:11 san475

For everyony who wants to compile on Arch Linux in 2024/4:

  1. modify the file ./Makefile:
diff --git a/Makefile b/Makefile
index 21fba7c..37775f2 100644
--- a/Makefile
+++ b/Makefile
@@ -5,6 +5,7 @@ CFLAGS = -std=c11 -O3 -g -Wall -Wextra -Wpedantic -Wstrict-aliasing
 CFLAGS += -Wno-pointer-arith -Wno-newline-eof -Wno-unused-parameter -Wno-gnu-statement-expression
 CFLAGS += -Wno-gnu-compound-literal-initializer -Wno-gnu-zero-variadic-macro-arguments
 CFLAGS += -Ilib/cglm/include -Ilib/glad/include -Ilib/glfw/include -Ilib/stb -Ilib/noise -fbracket-depth=1024
+CFLAGS += -Wno-error=implicit-function-declaration
 LDFLAGS = lib/glad/src/glad.o lib/cglm/libcglm.a lib/glfw/src/libglfw3.a lib/noise/libnoise.a -lm
  1. Modify the file ./lib/cglm/CMakeLists.txt
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 378332b..2bd0b8e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -33,7 +33,7 @@ if(MSVC)
     string(REGEX REPLACE "/RTC(su|[1su])" "" ${flag_var} "${${flag_var}}")
   endforeach(flag_var)
 else()
-  add_compile_options(-Wall -Werror -O3)
+  add_compile_options(-Wall -Werror -Wno-error=array-bounds -Wno-error=stringop-overflow -Wno-error=array-parameter -O3)
 endif()

hemashushu avatar Apr 11 '24 13:04 hemashushu