¡Oh no! ¿Dónde está el JavaScript? El navegador Web no tiene JavaScript activado o no es compatible con JavaScript. Active JavaScript en su explorador Web para ver correctamente este sitio Web o actualizar a un navegador Web que admita JavaScript.
Sabías que...
Sega vendió casi doce millones de unidades Dreamcast en todo el planeta.

Compilando Flashback Saturn

Última actualización en 9 year hace
FacundoARGFacundoARGMiembro Júnior
Publicado 9 year hace
Buenas,
Vengo a consultarles lo que ya me da hasta dolor de cabeza, Invoco a los Gurus del Foro!!! . Compilar REminiscence 0.1.9 de Saturn (mi idea final es migrar a la 0.2.1 como con la DC)
La cuestión es la siguiente, si bien son soy un usuario de Linux (ubuntu en este caso) no puedo compilar dicha version pero si la de PC.

Instalé el GNUSH kpit en su última versión v13.01_elf. Configuré el path como corresponde, incluso probe un sample que viene dentro y compila a la perfección.
Asi que por ahora descarto que sea esto. El problema creo yo que esta en el makefile. El cual es el siguiente


#
#   SEGA SATURN Graphic library make file for GNU
# Modified May 4 2003 by Ex-Cyber

# Uncomment the GNUTARGET definition that matches your toolchain.

# sh-coff: For e.g. KPIT's GNUSH COFF toolchain.
# sh-elf: For e.g. a preexisting Dreamcast toolchain.

#GNUTARGET = sh-coff-
GNUTARGET = sh-elf-

CC = $(GNUTARGET)gcc
CXX = $(GNUTARGET)g++
LD = $(GNUTARGET)ld
CONV = $(GNUTARGET)objcopy

# The command to use for deleting files/directories.
RM = rm -R
#RM = deltree
#RM = del /s

DEVKIT = /home/facundo/Documents/SATURN

SGLDIR = $(DEVKIT)/SGL302J
SGLIDR = $(SGLDIR)/INC
SGLLDR = $(SGLDIR)/LIB

SBLDIR = $(DEVKIT)/SBL6
SBLIDR = $(SBLDIR)/SEGALIB/INCLUDE
SBLLDR = $(SBLDIR)/SEGALIB/LIB

OBJECTS = ./objects

# -D_PAR_UPLOAD_ to enable cdunlock needed when uploading the sw through PAR
# -D_352_CLOCK_ Enables 352xYYY resolution to set saturn clock speed to 28mhz, graphic stretching
# might cause some artifacts
# option
CCFLAGS  = -D_SATURNPORT_ -D_PAR_UPLOAD_ -DSYS_BIG_ENDIAN -DBYPASS_PROTECTION -O2 -fno-rtti -fno-exceptions -m2 -c -I$(DEVKIT)/tooldir/include -I$(SRCDIR) -I$(SGLIDR) -I$(SBLIDR)
CXXFLAGS = -D_SATURNPORT_ -D_PAR_UPLOAD_ -DSYS_BIG_ENDIAN -DBYPASS_PROTECTION -O2 -fno-rtti -fno-exceptions -m2 -c -I$(DEVKIT)/tooldir/include -I$(SRCDIR) -I$(SGLIDR) -I$(SBLIDR)

# -m2 must be specified in LDFLAGS so the linker will search the SH2 lib dirs
# Specify path of libsgl.a by using "-L" option

# Sega's ld might not understand the --format command used here...

LDFLAGS = -m2 -L$(SGLLDR) -L$(SBLLDR) -Xlinker --strip-debug -Xlinker --format=coff-sh -Xlinker -T$(LDFILE) -Xlinker -Map \
          -Xlinker $(MPFILE) -Xlinker -e -Xlinker ___Start -nostartfiles
DFLAGS =
# source_program
include $(OBJECTS)

TARGET   = sl.elf
TARGET1  = sl.bin
LDFILE     = $(CMNDIR)/saturn.lnk
MPFILE   = $(TARGET:.elf=.map)
MAKEFILE = Makefile

all: $(TARGET) $(TARGET1)

# Use gcc to link so it will automagically find correct libs directory

$(TARGET) : $(SYSOBJS) $(OBJS) $(MAKEFILE) $(OBJECTS) $(LDFILE)
    $(CXX) $(LDFLAGS) $(SYSOBJS) $(OBJS) $(LIBS) -o $@

$(TARGET1) : $(SYSOBJS) $(OBJS) $(MAKEFILE) $(LDFILE)
    $(CONV) -O binary $(TARGET) $(TARGET1)

# Redundant linker script was here

# suffix
.SUFFIXES: .asm

.c.o:
ifndef GNUTARGET
    @echo "You need to define GNUTARGET in Makefile.template."
    @false
endif

ifndef SGLDIR
    @echo "You need to define SGLDIR in Makefile.template."
    @false
endif
    $(CXX) $< $(DFLAGS) $(CXXFLAGS) -o $@

clean:
    $(RM) $(OBJS) $(TARGET:.coff=.*)


Y por ultimo mis errores, que por lo que veo no encuentra definiciones en algunas clases "básicas" com cstring. Por lo que esta configurado esta utilizando g++. ¿Ha alguien le ha pasado esto?

facundo@facundo-VirtualBox:~/Desktop/REminiscence-saturn/saturnport$ make all
sh-elf-g++ -D_SATURNPORT_ -D_PAR_UPLOAD_ -DSYS_BIG_ENDIAN -DBYPASS_PROTECTION -O2 -fno-rtti -fno-exceptions -m2 -c -I/home/facundo/Documents/SATURN/tooldir/include -I../ -I/home/facundo/Documents/SATURN/SGL302J/INC -I/home/facundo/Documents/SATURN/SBL6/SEGALIB/INCLUDE   -c -o ..//gfs_wrap.o ..//gfs_wrap.cpp
In file included from ..//intern.h:23:0,
                 from ..//systemstub.h:22,
                 from ..//gfs_wrap.cpp:14:
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstring:84:11: error: ‘::strcoll’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstring:87:11: error: ‘::strerror’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstring:93:11: error: ‘::strtok’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstring:94:11: error: ‘::strxfrm’ has not been declared
In file included from ..//intern.h:24:0,
                 from ..//systemstub.h:22,
                 from ..//gfs_wrap.cpp:14:
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:102:11: error: ‘::div_t’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:103:11: error: ‘::ldiv_t’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:105:11: error: ‘::abort’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:107:11: error: ‘::atexit’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:108:11: error: ‘::atof’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:111:11: error: ‘::bsearch’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:112:11: error: ‘::calloc’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:113:11: error: ‘::div’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:114:11: error: ‘::exit’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:115:11: error: ‘::free’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:116:11: error: ‘::getenv’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:117:11: error: ‘::labs’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:118:11: error: ‘::ldiv’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:119:11: error: ‘::malloc’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:121:11: error: ‘::mblen’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:122:11: error: ‘::mbstowcs’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:123:11: error: ‘::mbtowc’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:126:11: error: ‘::rand’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:127:11: error: ‘::realloc’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:128:11: error: ‘::srand’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:129:11: error: ‘::strtod’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:130:11: error: ‘::strtol’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:131:11: error: ‘::strtoul’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:132:11: error: ‘::system’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:134:11: error: ‘::wcstombs’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:135:11: error: ‘::wctomb’ has not been declared
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib: In function ‘long int std::abs(long int)’:
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:140:34: error: ‘labs’ was not declared in this scope
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib: At global scope:
/usr/share/gnush_v13.01_elf-1/lib/gcc/sh-elf/4.7-GNUSH_v13.01/../../../../sh-elf/include/c++/4.7-GNUSH_v13.01/cstdlib:142:10: error: ‘ldiv_t’ does not name a type
..//gfs_wrap.cpp: In function ‘GFS_FILE* sat_fopen(const char*)’:
..//gfs_wrap.cpp:125:32: error: ‘strtok’ was not declared in this scope
..//gfs_wrap.cpp:127:31: error: ‘strtok’ was not declared in this scope
..//gfs_wrap.cpp:131:47: error: ‘strtok’ was not declared in this scope
..//gfs_wrap.cpp:135:57: error: ‘strncasecmp’ was not declared in this scope
..//gfs_wrap.cpp: In function ‘char* sat_match(const char*)’:
..//gfs_wrap.cpp:236:32: error: ‘strtok’ was not declared in this scope
..//gfs_wrap.cpp:238:31: error: ‘strtok’ was not declared in this scope
..//gfs_wrap.cpp:241:47: error: ‘strtok’ was not declared in this scope
..//gfs_wrap.cpp:245:57: error: ‘strncasecmp’ was not declared in this scope
make: *** [..//gfs_wrap.o] Error 1


¿Me faltará algún include?
PD: Contacte con el developer original y me mando a freir churros (Me deseó suerte y que no tiene tiempo) :p
Professional Game Developer
IndiketIndiketAdministrador
Publicado 9 year hace
Podría ser que te falte incluir el std namespace?
using namespace std;
FacundoARGFacundoARGMiembro Júnior
Publicado 9 year hace
No :( , no es el namespace. Mismo error.
Professional Game Developer
GuaripoloGuaripoloAdministrador
Publicado 9 year hace
Fijate si anda lo que dice acá, al parecer tiene que ver con el namespace
http://stackoverflow.com/questions/9877635/how-do-i-fix-some-versioning-issue-when-compiling-c-code

y si no es esto tiene que andar por ahi nomás, porque veo que hay muchos errores similares, fijate el último post de este hilo por ejemplo:

http://forums.codeguru.com/showthread.php?475785-include-lt-cstring-gt-error-help
FacundoARGFacundoARGMiembro Júnior
Publicado 9 year hace
Gracias por responder, mire cambie pero nada.
Si compilo con gcc y no con g++ compila pero no linkea. Ya voy a postear los resultados.
Professional Game Developer
puede ver todos los hilos de discusión en este foro.
puede iniciar un nuevo hilo de discusión en este foro.
no puede responder en este hilo de discusión.
no puede empezar en una encuesta en este foro.
puede cargar archivos adjuntos en este foro.
no puede descargar archivos adjuntos en este foro.
Afiliados
SEGA Saturno - Saturn, SEGA y Videojuegos