Sonic-Mania-Decompilation icon indicating copy to clipboard operation
Sonic-Mania-Decompilation copied to clipboard

Failed to compile on linux.

Open Bloxxel64 opened this issue 2 years ago • 1 comments

bloxxel64@bloxxel64-MintyMacintoshApplePro:~/Games/Sonic-Mania-Decompilation$ make -j compiling SonicMania/Game.c... compiling SonicMania/Objects/All.c... In file included from ./SonicMania/Game.h:75, from SonicMania/Objects/AIZ/AIZEggRobo.c:8, from SonicMania/Objects/All.c:1: SonicMania/Objects/Global/ReplayRecorder.c: In function ‘ReplayRecorder_AddReplayID’: SonicMania/Objects/Global/ReplayRecorder.c:1454:58: warning: zero-length gnu_printf format string [-Wformat-zero-length] 1454 | sprintf_s(createTime, (int32)sizeof(createTime), ""); | ^~ ./SonicMania/GameLink.h:14:41: note: in definition of macro ‘sprintf_s’ 14 | #define sprintf_s(x, _, ...) sprintf(x, VA_ARGS) | ^~~~~~~~~~~ done SonicMania/Game.c done SonicMania/Objects/All.c linking game... /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/crtbeginT.o: relocation R_X86_64_32 against hidden symbol `TMC_END' can not be used when making a shared object collect2: error: ld returned 1 exit status make: *** [Makefile:128: bin/Linux/SonicMania.so] Error 1

Bloxxel64 avatar Aug 17 '22 23:08 Bloxxel64

This happened because you did not clone the repository recursively. The READMEs do not currently suggest to do this, but this is what you have to do in order to make it build properly.

MisterSheeple avatar Aug 18 '22 03:08 MisterSheeple

Not entirely true, yes you need to clone it recursively, but that’s not what is causing this specific error.

Rerun make but add STATIC=0

AbnormalPoof avatar Aug 18 '22 23:08 AbnormalPoof