PadWorld-Entertainment / worldofpadman

World of PADMAN game repository
https://worldofpadman.net
Other
39 stars 9 forks source link

Problem compiling wop on Debian 11 bullseye 32 bit #203

Closed manito-manopla closed 11 months ago

manito-manopla commented 1 year ago

I had a problem compiling the latest version of wop available in the repository, at first I had this problem.

cmake --build .
/bin/sh: 1: /home/manito/worldofpadman/code/../tools/linux/glslangValidator: Exec format error
gmake[2]: *** [code/renderer_vulkan/CMakeFiles/renderer_vulkan.dir/build.make:124: code/renderer_vulkan/single_texture_vert.vspv] Error 126
gmake[1]: *** [CMakeFiles/Makefile2:1106: code/renderer_vulkan/CMakeFiles/renderer_vulkan.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2

But after fixing it with cmake .. -D BUILD_RENDERER_VULKAN=OFF, I had this other one.

[ 81%] Linking C executable /home/manito/worldofpadman/wop.x86
/usr/bin/ld: CMakeFiles/wop.dir/snd_mix.c.o: in function `S_TransferStereo16':
snd_mix.c:(.text+0x270): reference to `S_WriteLinearBlastStereo16' undefined
/usr/bin/ld: CMakeFiles/wop.dir/__/qcommon/common.c.o: in function `Com_DetectSSE':
common.c:(.text+0x3b2f): reference to `qsnapvectorsse' undefined
/usr/bin/ld: common.c:(.text+0x3b49): reference to `qftolsse' undefined
/usr/bin/ld: common.c:(.text+0x3b55): reference to `qvmftolsse' undefined
collect2: error: ld returned 1 exit status
gmake[2]: *** [code/client/CMakeFiles/wop.dir/build.make:1609: /home/manito/worldofpadman/wop.x86] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:1256: code/client/CMakeFiles/wop.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2

Why is this caused, and what can be the solution?

mgerhardy commented 1 year ago

Vulkan is disabled by default now - see d32daca1b04bfcdd08401b62de012cd0961ade5a - and there is #181 to fix it for other platforms, too (like arm e.g)

The linker error should be fixed by the linked PR

manito-manopla commented 1 year ago

The problem with vulkan had already been solved with cmake .. -D BUILD_RENDERER_VULKAN=OFF, that worked, now the problem is not with vulkan, but with something else, that is seen with the second report that the compiler throws

manito-manopla commented 1 year ago

I have this other one after adding the two modified files.

/home/manito/worldofpadman/code/asm/snapvector.c: In function ‘qsnapvectorsse’:
/home/manito/worldofpadman/code/asm/snapvector.c:37:2: error: the register ‘%xmm2’ cannot be clobbered in ‘asm’ for the current target
   37 |  __asm__ volatile("movaps (%0), %%xmm1\n"
      |  ^~~~~~~
gmake[2]: *** [code/client/CMakeFiles/wop.dir/build.make:986: code/client/CMakeFiles/wop.dir/__/asm/snapvector.c.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:1256: code/client/CMakeFiles/wop.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
mgerhardy commented 1 year ago

can you please give the latest main revision a try. It should be fixed now.

kai-li-wop commented 1 year ago

@manito-manopla: is your issue solved? Please give us a feedback so we know if we can close this ticket. Thx

kai-li-wop commented 11 months ago

As there is no further feedback on this, I will check this issue as solved. Please open a new ticket if this issue still exists after all.