https://www.segasaturno.com/portal/viewtopic.php?f=33&t=7702&p=94403#p94403 ----------------------------------- SebasSBM 07 Marzo 2016, 11:45 AM Re: [Tutorial 5J] Compilación De La Librería Libyaul ----------------------------------- Ryo: a mí me falla en el mismo paso: `make install-release`. Tras haber realizado el proceso de instalación tal que así: [code linenumbers=false] # Preparar el directorio para el IDE de saturn cd ~ mkdir saturn_ide cd saturn_ide git clone https://github.com/ijacquez/libyaul.git libyaul mkdir tool_chains cd libyaul # Actualizar submódulos git submodule init git submodule update -f # Copiar el archivo de configuración por defecto para editarlo cd build_scripts cp -v config{.in,} [/code] Luego, en el config editamos: [code linenumbers=false] # Ruta donde se instalará la tool-chain BUILD_INSTALL_DIR="${HOME}/saturn_ide/tool_chains" # Opcional: Archivos temporales de build-compiler (logs incluidos) BUILD_SRC_DIR="/tmp/libyaul_dump/" # Desactivar GDB OPTION_DOWNLOAD_TARBALLS="yes" OPTION_ENABLE_GDB="no" [/code] Me instalo estas librerías: [code linenumbers=false] sudo apt-get install libgmp-dev libgmp3-dev sudo apt-get install libmpfr-dev sudo apt-get install libmpc-dev apt-get install libncurses5-dev sudo apt-get install realpath [/code] Luego ejecuto: [code linenumbers=false] ./build-compiler [/code] Aquí me genera la tool-chain sin errores. Pero me deja un montón de Warnings en los logs temporales. Son fácilmente localizables buscando " ^" dentro de ellos (o \s\^ como regexp si lo abres con [i]vim[/i]). Vuelvo al directorio de libyaul y preparo el nuevo entorno: [code linenumbers=false] export PATH="/home/sebassbm/saturn_ide/tool_chains/sh-elf/bin:/home/sebassbm/saturn_ide/tool_chains/m68k-elf/bin:${PATH}" cd ~/saturn_ide/libyaul cp -v yaul.env.in yaul.env [/code] En yaul.env edito: export INSTALL_ROOT=${HOME}/saturn_ide/tool-chains/sh-elf export BUILD_ROOT=${HOME}/saturn_ide/libyaul Entonces, ejecuto [b]make release[/b]. Parece que se lo traga, pero va dejando un reguero de errores de compilación a su paso: [u]Los errores extraídos del output:[/u] [code linenumbers=false] kernel/mm/realloc_r.c: In function '_realloc_r': kernel/mm/realloc_r.c:11:9: warning: implicit declaration of function 'realloc' [-Wimplicit-function-declaration] kernel/mm/realloc_r.c:11:16: warning: incompatible implicit declaration of built-in function 'realloc' [enabled by default] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h: In function 'isonum_723': kernel/vfs/fs/iso9660/iso9660-internal.h:200:9: warning: implicit declaration of function 'be16dec' [-Wimplicit-function-declaration] kernel/vfs/fs/iso9660/iso9660-internal.h: In function 'isonum_733': kernel/vfs/fs/iso9660/iso9660-internal.h:225:9: warning: implicit declaration of function 'be32dec' [-Wimplicit-function-declaration] kernel/vfs/fs/iso9660/iso9660.c: In function 'iso9660_mount': kernel/vfs/fs/iso9660/iso9660.c:63:28: warning: implicit declaration of function 'bread' [-Wimplicit-function-declaration] kernel/vfs/fs/iso9660/iso9660.c:66:9: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c:81:9: warning: implicit declaration of function 'malloc' [-Wimplicit-function-declaration] kernel/vfs/fs/iso9660/iso9660.c:81:37: warning: incompatible implicit declaration of built-in function 'malloc' [enabled by default] kernel/vfs/fs/iso9660/iso9660.c:100:17: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration] kernel/vfs/fs/iso9660/iso9660.c:100:17: warning: incompatible implicit declaration of built-in function 'free' [enabled by default] kernel/vfs/fs/iso9660/iso9660.c: In function 'iso9660_find_file': kernel/vfs/fs/iso9660/iso9660.c:117:9: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c: In function 'iso9660_find_directory': kernel/vfs/fs/iso9660/iso9660.c:140:9: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c: In function 'iso9660_find': kernel/vfs/fs/iso9660/iso9660.c:191:25: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c:199:33: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c:200:37: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c:226:33: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' kernel/vfs/fs/iso9660/iso9660.c:245:37: warning: pointer targets in passing argument 1 of 'isonum_711' differ in signedness [-Wpointer-sign] In file included from kernel/vfs/fs/iso9660/iso9660.c:8:0: kernel/vfs/fs/iso9660/iso9660-internal.h:169:1: note: expected 'const uint8_t *' but argument is of type 'const char *' scu/bus/b/vdp2/vdp2_scrn_back_screen_color_set.c: In function 'vdp2_scrn_back_screen_color_set': scu/bus/b/vdp2/vdp2_scrn_back_screen_color_set.c:23:9: warning: implicit declaration of function 'vdp2_scrn_back_screen_addr_set' [-Wimplicit-function-declaration] scu/bus/b/vdp2/vdp2_scrn_bitmap_format_set.c: In function 'vdp2_scrn_bitmap_format_set': scu/bus/b/vdp2/vdp2_scrn_bitmap_format_set.c:173:41: warning: 'bank' may be used uninitialized in this function [-Wmaybe-uninitialized] scu/bus/b/vdp2/vdp2_scrn_cell_format_set.c: In function 'vdp2_scrn_cell_format_set': scu/bus/b/vdp2/vdp2_scrn_cell_format_set.c:386:17: warning: 'pncnx' may be used uninitialized in this function [-Wmaybe-uninitialized] scu/bus/b/vdp2/vdp2_scrn_cell_format_set.c:178:31: warning: 'sc_number' may be used uninitialized in this function [-Wmaybe-uninitialized] scu/bus/b/vdp2/vdp2_scrn_cell_format_set.c:161:31: warning: 'sp_number' may be used uninitialized in this function [-Wmaybe-uninitialized] scu/bus/cpu/smpc/smpc_peripheral_digital_get.c: In function 'smpc_peripheral_digital_get': scu/bus/cpu/smpc/smpc_peripheral_digital_get.c:26:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] scu/bus/cpu/smpc/smpc_peripheral_digital_get.c:27:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] scu/bus/cpu/smpc/smpc_peripheral_init.c: In function 'peripheral_update': scu/bus/cpu/smpc/smpc_peripheral_init.c:218:39: warning: 'connected' may be used uninitialized in this function [-Wmaybe-uninitialized] scu/bus/cpu/smpc/smpc_peripheral_init.c:305:26: warning: 'multitap_id' may be used uninitialized in this function [-Wmaybe-uninitialized] scu/bus/cpu/smpc/smpc_smc_call.c: In function 'smpc_smc_call': scu/bus/cpu/smpc/smpc_smc_call.c:61:1: warning: control reaches end of non-void function [-Wreturn-type] prs.c: In function 'prs_decompress': prs.c:215:25: warning: format '%X' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat] prs.c:215:25: warning: format '%X' expects argument of type 'unsigned int', but argument 5 has type 'uint32_t' [-Wformat] prs.c:215:25: warning: format '%X' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat] prs.c:215:25: warning: format '%X' expects argument of type 'unsigned int', but argument 5 has type 'uint32_t' [-Wformat] prs.c:234:25: warning: format '%X' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat] prs.c:234:25: warning: format '%X' expects argument of type 'unsigned int', but argument 5 has type 'uint32_t' [-Wformat] prs.c:234:25: warning: format '%X' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat] prs.c:234:25: warning: format '%X' expects argument of type 'unsigned int', but argument 5 has type 'uint32_t' [-Wformat] fix16_str.c: In function 'fix16_from_str': fix16_str.c:62:5: warning: array subscript has type 'char' [-Wchar-subscripts] fix16_str.c:73:5: warning: array subscript has type 'char' [-Wchar-subscripts] fix16_str.c:93:9: warning: array subscript has type 'char' [-Wchar-subscripts] fix16_str.c:106:9: warning: array subscript has type 'char' [-Wchar-subscripts] fix16_str.c:106:9: warning: array subscript has type 'char' [-Wchar-subscripts] [/code] Y al ejecutar [b]make install-release[/b]: [code linenumbers=false] mrelease mlibyaul make[1]: se ingresa al directorio «/home/sebassbm/saturn_ide/libyaul/libyaul» make[1]: No se hace nada para «release». make[1]: se sale del directorio «/home/sebassbm/saturn_ide/libyaul/libyaul» mrelease mlibbcl make[1]: se ingresa al directorio «/home/sebassbm/saturn_ide/libyaul/libbcl» make[1]: No se hace nada para «release». make[1]: se sale del directorio «/home/sebassbm/saturn_ide/libyaul/libbcl» mrelease mlibfixmath make[1]: se ingresa al directorio «/home/sebassbm/saturn_ide/libyaul/libfixmath» make[1]: No se hace nada para «release». make[1]: se sale del directorio «/home/sebassbm/saturn_ide/libyaul/libfixmath» mrelease mlibtga make[1]: se ingresa al directorio «/home/sebassbm/saturn_ide/libyaul/libtga» make[1]: No se hace nada para «release». make[1]: se sale del directorio «/home/sebassbm/saturn_ide/libyaul/libtga» minstall-release mlibyaul make[1]: se ingresa al directorio «/home/sebassbm/saturn_ide/libyaul/libyaul» realpath: opción incorrecta -- «m» Uso: realpath [-s|--strip] [-z|--zero] nombre de archivo ... realpath -h|--help realpath -v|--version realpath: opción incorrecta -- «m» Uso: realpath [-s|--strip] [-z|--zero] nombre de archivo ... realpath -h|--help realpath -v|--version mlibyaul/yaul.h mkdir: falta un operando Pruebe 'mkdir --help' para más información. install: falta el operando archivo de destino después de «/home/sebassbm/saturn_ide/libyaul/libyaul/./yaul.h» Pruebe 'install --help' para más información. [...] make: *** [install-release] Error 2 [/code] Algo va mal en el paso [b]make release[/b], pero lo más raro es el fallo que hace [b]make install-release[/b] el cual parece estar comportándose como si algo fallara en el Makefile con install-release (aunque sólo es una corazonada). También puede ser que los fallos extraídos de [b]make release[/b] tengan mucho que ver con lo que está pasando, o los cientos de Warnings que el [b]build-compiler[/b] deja en la carpeta temporal al generar la tool-chain.