PDA

Ver la versión completa : ayuda para compilar



Yuusaku
03/02/2006, 05:44
init.c:(.text+0x30): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [final] Error 1

me da ese error que no se es , uso la sdl de 130 y pico mb adems he probado con otras y lo mismo....

el makefile es este:


OBJS = main.o gametiles.o bitmaps.o gameaux.o gamecycle.o render.o ingamecycle.o passwords.o shrines.o demons.o gameinteractions.o line_clip.o path.o sound.o drawing.o gameobjects.o loadpcx.o roomchange.o debug-report.o keyboard.o
CROSS_COMPILE = /home/guarra/open2x/bin/arm-open2x-linux-
SDL_BASE = /home/guarra/open2x/
LDFLAGS = -static

CC = $(CROSS_COMPILE)gcc
CXX = $(CROSS_COMPILE)g++
STRIP = $(CROSS_COMPILE)strip

CFLAGS = -I$(SDL_BASE)/include/SDL -D_REENTRANT -I$(SDL_BASE)/include -I$(SDL_BASE)/include/SDL -D_REENTRANT -O2 -Wall
CXXFLAGS = -I$(SDL_BASE)/include/SDL -D_REENTRANT -I$(SDL_BASE)/include -I$(SDL_BASE)/include/SDL -D_REENTRANT-O2 -Wall

LIBS = -L$(SDL_BASE)/lib -Wl,-rpath,$(SDL_BASE)/lib -lSDLmain -lSDL_image -lpng -ljpeg -lz -lc -lm -lgcc -lSDL_mixer -lvorbisidec -lmikmod -lSDL -lpthread

final : $(OBJS)
$(CXX) $(LDFLAGS) $(LIBS) -o final.gpe

clean:
rm -f $(ALL_TARGETS) *.o *~

jlz
03/02/2006, 17:25
Quizas pueda ser

$(CXX) $(LDFLAGS) $(LIBS) -o final.gpe $(OBJS)

WinterN
03/02/2006, 17:54
Quizas pueda ser

$(CXX) $(LDFLAGS) $(LIBS) -o final.gpe $(OBJS)

Además de eso falta la regla para construir los objetos. Algo así como:


.c.o:
$(CXX) $(CXXFLAGS) -c $<


Ah, y tampoco estás definiendo en ningún sitio la variable $(ALL_TARGETS) que utilizas en el clean. Aunque eso no te afecta a la hora de compilar.

Yuusaku
04/02/2006, 05:18
[code]objs := \

WinterN
04/02/2006, 06:26
Pues parece que no te está pillando bien el SDL_mixer... (supongo que hasta ahí llegabas, pero no te se decir más :rolleyes: )

Uncanny
04/02/2006, 08:35
En realidad por las funciones que no encuentra definidas lo que te falta es la librería SDL_sound, la cual no debes tener compilada (lo cual sería normal, todo el mundo está usando solo SDL_mixer como librería auxiliar de sonido para SDL) y aunque la tengas no la indicas en los flags de enlazado de librerías (que sería -lSDL_sound), así que primero te tocaria compilar esta librería y luego ya deberías poder compilar ese proyecto, que por el nombre del directorio de las fuentes debe ser el remake de cierto juego de Konami y original del MSX :D

Yuusaku
04/02/2006, 17:51
es que esa lib no la tengo sabeis donde puedo sacarla para compilarla o encontrarla precompilada para la gp2x?

Uncanny
04/02/2006, 21:27
es que esa lib no la tengo sabeis donde puedo sacarla para compilarla o encontrarla precompilada para la gp2x?El código fuente de SDL_sound está aquí: http://icculus.org/SDL_sound/