MorsGames / sm64plus

A fork of sm64-port that focuses on QoL improvements and customizability.
https://mfgg.net/index.php?act=resdb&param=02&c=2&id=38190
464 stars 32 forks source link

SM64Plus fails to build with a PAL ROM #92

Open byjove01 opened 10 months ago

byjove01 commented 10 months ago

Wanted to build SM64Plus to give it a test, but apparently, there's no instruction or any message in the index page about European/Japanese variants of the Super Mario 64 ROM. With a little hope to make it work, I manually edited the Makefile to set the VERSION variable to eu. Unfortunately it didn't work and I got this error log during the process. It seems like several C variables aren't set up.

*Beware /!\ Frnch.**


hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/peach/peach_lips.rgba16 > build/eu_pc/actors/peach/peach_lips.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/peach/peach_lips_scrunched.rgba16 > build/eu_pc/actors/peach/peach_lips_scrunched.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/peach/peach_nostril.rgba16 > build/eu_pc/actors/peach/peach_nostril.rgba16.inc.c
src/game/ingame_menu.c: Dans la fonction « render_pause_course_options »:
echo >> build/eu_pc/actors/peach/peach_dress.rgba16.inc.c
echo >> build/eu_pc/actors/peach/peach_eye_closed.rgba16.inc.c
src/game/ingame_menu.c:2558:50: erreur: « textExitGame » non déclaré (première utilisation dans cette fonction); vouliez-vous utiliser « textExitCourse » ?
2558 |             print_generic_string(x + 10, y - 33, textExitGame);
|                                                  ^~~~~~~~~~~~
|                                                  textExitCourse
echo >> build/eu_pc/actors/peach/peach_eye_mostly_closed.rgba16.inc.c
src/game/ingame_menu.c:2558:50: note: chaque identificateur non déclaré est rapporté une seule fois pour chaque fonction dans laquelle il apparaît
src/game/hud.c:707:58: erreur: « course_name_table_eu_en » non déclaré (première utilisation dans cette fonction)
707 |                     courseNameTbl = segmented_to_virtual(course_name_table_eu_en);
|                                                          ^~~~~~~~~~~~~~~~~~~~~~~
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/yoshi/yoshi_eye_blink.rgba16 > build/eu_pc/actors/yoshi/yoshi_eye_blink.rgba16.inc.c
echo >> build/eu_pc/actors/peach/peach_eye_mostly_open.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/yoshi/yoshi_eye.rgba16 > build/eu_pc/actors/yoshi/yoshi_eye.rgba16.inc.c
echo >> build/eu_pc/actors/peach/peach_eye_open.rgba16.inc.c
echo >> build/eu_pc/actors/peach/peach_lips.rgba16.inc.c
echo >> build/eu_pc/actors/peach/peach_lips_scrunched.rgba16.inc.c
echo >> build/eu_pc/actors/peach/peach_nostril.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/yoshi/yoshi_nostril.rgba16 > build/eu_pc/actors/yoshi/yoshi_nostril.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/bubba/bubba_eye_border.rgba16 > build/eu_pc/actors/bubba/bubba_eye_border.rgba16.inc.c
echo >> build/eu_pc/actors/yoshi/yoshi_eye_blink.rgba16.inc.c
echo >> build/eu_pc/actors/yoshi/yoshi_eye.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/bubba/bubba_eyes_unused.rgba16 > build/eu_pc/actors/bubba/bubba_eyes_unused.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/bubba/bubba_fins.rgba16 > build/eu_pc/actors/bubba/bubba_fins.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/bubba/bubba_scales.rgba16 > build/eu_pc/actors/bubba/bubba_scales.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/bubba/bubba_sunglasses.rgba16 > build/eu_pc/actors/bubba/bubba_sunglasses.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/wiggler/wiggler_eye.rgba16 > build/eu_pc/actors/wiggler/wiggler_eye.rgba16.inc.c
echo >> build/eu_pc/actors/yoshi/yoshi_nostril.rgba16.inc.c
echo >> build/eu_pc/actors/bubba/bubba_eye_border.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/wiggler/wiggler_flower.rgba16 > build/eu_pc/actors/wiggler/wiggler_flower.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/wiggler/wiggler_frown.rgba16 > build/eu_pc/actors/wiggler/wiggler_frown.rgba16.inc.c
hexdump -v -e '1/1 "0x%X,"' build/eu_pc/actors/wiggler/wiggler_nose_left_side.rgba16 > build/eu_pc/actors/wiggler/wiggler_nose_left_side.rgba16.inc.c
make: *** [Makefile:866: build/eu_pc/src/game/ingame_menu.o] Error 1
make: *** Attente des tâches non terminées....
echo >> build/eu_pc/actors/bubba/bubba_eyes_unused.rgba16.inc.c
src/game/hud.c:710:55: erreur: « act_name_table_eu_fr » non déclaré (première utilisation dans cette fonction)
710 |                     actNameTbl = segmented_to_virtual(act_name_table_eu_fr);
|                                                       ^~~~~~~~~~~~~~~~~~~~
echo >> build/eu_pc/actors/bubba/bubba_fins.rgba16.inc.c
echo >> build/eu_pc/actors/bubba/bubba_scales.rgba16.inc.c
echo >> build/eu_pc/actors/bubba/bubba_sunglasses.rgba16.inc.c
echo >> build/eu_pc/actors/wiggler/wiggler_eye.rgba16.inc.c
echo >> build/eu_pc/actors/wiggler/wiggler_flower.rgba16.inc.c
echo >> build/eu_pc/actors/wiggler/wiggler_nose_left_side.rgba16.inc.c
echo >> build/eu_pc/actors/wiggler/wiggler_frown.rgba16.inc.c
src/game/hud.c:711:58: erreur: « course_name_table_eu_fr » non déclaré (première utilisation dans cette fonction)
711 |                     courseNameTbl = segmented_to_virtual(course_name_table_eu_fr);
|                                                          ^~~~~~~~~~~~~~~~~~~~~~~
src/game/hud.c:714:55: erreur: « act_name_table_eu_de » non déclaré (première utilisation dans cette fonction)
714 |                     actNameTbl = segmented_to_virtual(act_name_table_eu_de);
|                                                       ^~~~~~~~~~~~~~~~~~~~
src/game/hud.c:715:58: erreur: « course_name_table_eu_de » non déclaré (première utilisation dans cette fonction)
715 |                     courseNameTbl = segmented_to_virtual(course_name_table_eu_de);
|                                                          ^~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:866: build/eu_pc/src/game/hud.o] Error 1
[byjove@pchost-1 sm64plus]$ make -j$(nproc) > log.txt
src/game/hud.c: Dans la fonction « render_you_got_a_star »:
src/game/hud.c:704:21: erreur: « gInGameLanguage » non déclaré (première utilisation dans cette fonction)
704 |             switch (gInGameLanguage) {
|                     ^~~~~~~~~~~~~~~
src/game/hud.c:704:21: note: chaque identificateur non déclaré est rapporté une seule fois pour chaque fonction dans laquelle il apparaît
src/game/hud.c:706:55: erreur: « act_name_table_eu_en » non déclaré (première utilisation dans cette fonction)
706 |                     actNameTbl = segmented_to_virtual(act_name_table_eu_en);
|                                                       ^~~~~~~~~~~~~~~~~~~~
src/game/ingame_menu.c: Dans la fonction « render_pause_course_options »:
src/game/ingame_menu.c:2558:50: erreur: « textExitGame » non déclaré (première utilisation dans cette fonction); vouliez-vous utiliser « textExitCourse » ?
2558 |             print_generic_string(x + 10, y - 33, textExitGame);
|                                                  ^~~~~~~~~~~~
|                                                  textExitCourse
src/game/ingame_menu.c:2558:50: note: chaque identificateur non déclaré est rapporté une seule fois pour chaque fonction dans laquelle il apparaît
src/game/hud.c:707:58: erreur: « course_name_table_eu_en » non déclaré (première utilisation dans cette fonction)
707 |                     courseNameTbl = segmented_to_virtual(course_name_table_eu_en);
|                                                          ^~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:866: build/eu_pc/src/game/ingame_menu.o] Error 1
make: *** Attente des tâches non terminées....
src/game/hud.c:710:55: erreur: « act_name_table_eu_fr » non déclaré (première utilisation dans cette fonction)
710 |                     actNameTbl = segmented_to_virtual(act_name_table_eu_fr);
|                                                       ^~~~~~~~~~~~~~~~~~~~
src/game/hud.c:711:58: erreur: « course_name_table_eu_fr » non déclaré (première utilisation dans cette fonction)
711 |                     courseNameTbl = segmented_to_virtual(course_name_table_eu_fr);
|                                                          ^~~~~~~~~~~~~~~~~~~~~~~
src/game/hud.c:714:55: erreur: « act_name_table_eu_de » non déclaré (première utilisation dans cette fonction)
714 |                     actNameTbl = segmented_to_virtual(act_name_table_eu_de);
|                                                       ^~~~~~~~~~~~~~~~~~~~
src/game/hud.c:715:58: erreur: « course_name_table_eu_de » non déclaré (première utilisation dans cette fonction)
715 |                     courseNameTbl = segmented_to_virtual(course_name_table_eu_de);
|                                                          ^~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:866: build/eu_pc/src/game/hud.o] Error 1```