1

Bonjour à tous smile

Voilà, je m'en remet à vous, j'ai un petit problème que je n'arrive pas à résoudre ( je suis encore un n00b en programmation livre )

Je vous explique :

Je suis sur un projet en C++ avec la lib SDL et je viens d'inclure des rotations sur certaines de mes sprites. J'utilise pour cela la lib SDL_gfx happy

Je met donc mon include et je compile d'abord sous win.

mad Ca me met une erreur "Undefined reference to ... " mad

Pas de problème cool Je vais dans les options du projet, onglet paramètre, et j'ajoute -lSDL_gfx à la fin de l'éditeur de lien smile

F9 ! Hop, ca compile et se lance, tout marche ! grin

Ok, super, maintenant, comme auparavant, je passe sur le compilo GP2X, et je compile avec le même éditeur de lien.

Et là : mad ERREUR ! mad

" 7 C:\Documents and Settings\Kamykaze\Bureau\Moteur Shmup\Sources v. beta 0.5\run.h SDL/SDL_rotozoom.h: No such file or directory. "

Je comprend pas trifaq

Si quelqu'on pouvait m'expliquer comment faire, merci smile

2

Je me suis mal expliqué ? J'ai pas assez détaillé mon problème ?

Ou alors c'est un truc tellement débile que personne ne veut perdre de temps à répondre ? lolpaf

3

bah pitetre personne qui sait n'est passé...
Pis ceux qui passent et qui ne savent pas vont pas te répondre "Je sais pas" smile comme moi par exemple !

SDL/SDL_rotozoom.h existe bien parmi les fichiers de ta lib SDL ?
avatar
Tout probleme a sa solution
Oeil de feu

4

Je m'en doute bien, je disais ça en rigolant wink

Sinon, oui, le fichier SDL_rotozoom.h est bien dans le dossier include\SDL , d'ailleurs la compilation se passe sans problèmes sous Win ...

Je vais créer un nouveau projet et copier toutes mes sources dedans, puis recompiler et vous mettre le makefile, ca pourra peut être aider.

5

Bon, j'ai fait comme je disais, j'ai crée un nouveau projet et copié toutes mes sources.

J'ai compilé pour Win, en ajoutant SDL_gfx à l'éditeur de lien, pas de problème ...

Je passe sous le compilo GP2X, et cette fois : cannot find -lSDL_gfx

Je vous copie ici mon makefile tout frais que vient de créer Dev C++ :
# Project: Projet1
# Makefile created by Dev-C++ 4.9.9.2

CPP = g++.exe
CC = gcc.exe
OBJ = gp2x/AnimPerso.o gp2x/Bonus.o gp2x/Boulette.o gp2x/Collisions.o gp2x/Decor.o gp2x/DecorPlan.o gp2x/EBonus.o gp2x/EEnnemi.o gp2x/Effect_Fondu.o gp2x/Element.o gp2x/Ennemi.o gp2x/Event.o gp2x/Game_Over.o gp2x/ListeElement.o gp2x/Loading.o gp2x/Pause.o gp2x/Perso.o gp2x/run.o gp2x/Score_counter.o gp2x/Tir.o gp2x/main.o
LINKOBJ = gp2x/AnimPerso.o gp2x/Bonus.o gp2x/Boulette.o gp2x/Collisions.o gp2x/Decor.o gp2x/DecorPlan.o gp2x/EBonus.o gp2x/EEnnemi.o gp2x/Effect_Fondu.o gp2x/Element.o gp2x/Ennemi.o gp2x/Event.o gp2x/Game_Over.o gp2x/ListeElement.o gp2x/Loading.o gp2x/Pause.o gp2x/Perso.o gp2x/run.o gp2x/Score_counter.o gp2x/Tir.o gp2x/main.o
LIBS = -L"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/arm-gp2x-linux/lib" -lSDL_image -lSDL_mixer -lSDL_ttf -lSDL_inifile -lSDL -lpng -ljpeg -lvorbisidec -lmad -lfreetype -lz -lunicodefont -lSDL_gfx
INCS = -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/arm-gp2x-linux/include" -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/include" -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/include/SDL"
CXXINCS = -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/include/c++/3.4.6/backward" -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/include/c++/3.4.6" -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/arm-gp2x-linux/include" -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/include" -I"C:/Documents and Settings/Kamykaze/Bureau/Dev C++ for GP2X/GP2XSDK/Tools/include/SDL"
BIN = Projet1.gpe
CXXFLAGS = $(CXXINCS) -DGP2X
CFLAGS = $(INCS) -D_REENTRANT -DGP2X
RM = rm -f
MKDIR = cygwin-mkdir -p

.PHONY: all all-before all-after clean clean-custom

all: all-before Projet1.gpe all-after

all-before:
$(MKDIR) "gp2x"


clean: clean-custom
${RM} $(OBJ) $(BIN)

$(BIN): $(OBJ)
$(CPP) $(LINKOBJ) -o $@ $(LIBS)

gp2x/AnimPerso.o: AnimPerso.cpp
$(CPP) -c AnimPerso.cpp -o gp2x/AnimPerso.o $(CXXFLAGS)

gp2x/Bonus.o: Bonus.cpp
$(CPP) -c Bonus.cpp -o gp2x/Bonus.o $(CXXFLAGS)

[...]

gp2x/main.o: main.c
$(CPP) -c main.c -o gp2x/main.o $(CXXFLAGS)


En espérant que ca dise quelque chose à quelqu'un :/

6

Je viens d'ailleurs de remarquer qu'il existe dans le dossier libs du compilateur un fichier libSDL_gfx.a qui n'est pas par contre dans le dossier Tools\arm-gp2x-linux\lib ...

Est ce que ca pourrait venir de ca ?

7

Salut,
il semblerait que cette bibliothèque n'est pas été compilée pour la gp2x. Tu vas devoir la compiler.
Les sources sont dispos:http://www.ferzkopp.net/joomla/content/view/19/14/.
Je ne pense pas pouvoir t'aider d'avantage.Quelqu'un pourra sans doutes te renseigner pour la compilation.Mais ça doit pas être très compliqué.

8

Merci detays smile

Je vais continuer de chercher ...

9

ou tu peux utiliser le SDK de open2x qui inclue deja SDL_gfx
--> www.emericdev.com
--> www.gp2xfr.info

10

J'avais pas vu ta réponse, merci smile

En fait j'viens aussi de me rendre compte de quelque chose ... mon exécutable tourne à 3fps sad Apparement trop de transparences ... j'peux faire quoi pour contrer ca ?

11

sans voir ton code sa va pas être facile...
utilise le moins possible sdl_gfx, surtout les rotations et redimentionnements, c'est très lent sur gp2x...

après 3fps... c'est plutôt extrême tu dois juste avoir un gros problème de conception.
--> www.emericdev.com
--> www.gp2xfr.info

12

Pour l'instant je n'utilise SDL_gfx que pour régler les fps de mon logiciel.
Faudrait aussi que j'essaye avec le SDK de Open2X, qui accélère en hard quelques fonctions si j'ai bien compris.
On m'a dit que la transparence avec SDL était assez mal gérée et pouvait faire ramer l'appli, mais bon, à ce point là c'est vrai que je me pose des questions ...

13

Bon, je suis désolé d'embêter tout le monde, je sais que parfois les questions de noob peuvent être très énervantes ... mais si quelqu'un pouvait m'expliquer en quelques lignes comment utiliser le SDK Open2x sous windows ...
J'ai DL l'achive sur le site mais j'suis pas super avancé, j'comprend pas trop ce que je dois faire avec ensuite, et j'ai peur de pourir mon environnement de DEV triso

merci.

14

http://wiki.open2x.org/open2x/wiki/index.php?title=Toolchain#Windows_users

je peux pas t'en dire plus j'ai jamais tenté de faire ca sous windows (j'ai pas windows...)
--> www.emericdev.com
--> www.gp2xfr.info

15

livre Je vais essayer de comprendre comment ca marche, merci ...