Problème SDL sous mac

Fermé
lebesgue Messages postés 13 Date d'inscription mardi 1 avril 2008 Statut Membre Dernière intervention 22 novembre 2008 - 22 nov. 2008 à 01:23
 Sheelda - 3 févr. 2009 à 00:08
Bonjour tout le monde,

je viens d'installer la SDL sur mon mac avec fink (pour pouvoir faire du graphisme en c/c++), et il se trouve que j'ai l'erreur suivante quand j'essaie de compiles n'importe quel programme en incluant la SDL :

Undefined symbols:
"_main", referenced from:
start in crt1.10.5.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Merci de m'aider...

PS : je compile avec gcc
A voir également:

10 réponses

J'arrive peut être un peu tard et tu as sûrement résolu ton problème depuis longtemps mais je me permet de poster pour ceux qui ont le même problème et qui cherchent peut être encore...

J'ai commencé un projet avec SDL sous mac OS X et j'ai eu ce genre de problèmes. 2 choses à faire :

Copier dans le répertoire de ton projet les fichiers SDLMain.m et SDLMain.h qui se trouvent dans le répertoire "devel-lite" de l'image dmg que tu as sûrement téléchargée sur libsdl.org

Ensuite, l'en-tête de ton main doit être :

extern "C" int main(int argc, char *argv[])
2
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
22 nov. 2008 à 01:31
verifie que tu as bien ecrit l'en tete du main
0
lebesgue Messages postés 13 Date d'inscription mardi 1 avril 2008 Statut Membre Dernière intervention 22 novembre 2008
22 nov. 2008 à 01:36
Bah a priori oui...

Voila mon code :

#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>

int main(){
return 0;
}

et si je commente #include <SDL/SDL.h> ca marche nikel...
0
lebesgue Messages postés 13 Date d'inscription mardi 1 avril 2008 Statut Membre Dernière intervention 22 novembre 2008
22 nov. 2008 à 01:40
et même quand je met int main(int argc, char *argv[ ]) j'ai la même erreur...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
22 nov. 2008 à 01:50
ben si ça marche quand tu commente l'include de SDL c'est que soit tu n'as pas installé SDL ou soit elle n'est pas dans le path donc ton compilateur la trouve pas
0
lebesgue Messages postés 13 Date d'inscription mardi 1 avril 2008 Statut Membre Dernière intervention 22 novembre 2008
22 nov. 2008 à 01:53
A priori il l'a trouve, quand elle n'était pas au bon endroit (il y'a environ 1h...) j'avait un erreur SDL/SDL.h not found
0
lebesgue Messages postés 13 Date d'inscription mardi 1 avril 2008 Statut Membre Dernière intervention 22 novembre 2008
22 nov. 2008 à 01:53
A priori il l'a trouve, quand elle n'était pas au bon endroit (il y'a environ 1h...) j'avait un erreur SDL/SDL.h not found
0
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
22 nov. 2008 à 01:58
dans ce cas je vois pas :(
peut etre un probleme de lien...
0
Et une dernière chose, pour la compilation en c++, la commande c'est :

g++ -I/Library/Frameworks/SDL.framework/Headers <liste des fichiers .cpp> SDLMain.m -framework SDL -framework Cocoa
0
Bonsoir !
Je galere egalement ! Sauf que j'essaye de compiler en l'OCaml, mais l'erreur me semble identique:

ld: library not found for -lSDL
collect2: ld returned 1 exit status
File "_none_", line 1, characters 0-1:
Error: Error while building custom runtime system
make[2]: *** [game/project] Error 2
make[1]: *** [byte-code] Error 2
make: *** [all] Error 2

(le code compile sous windows, pas de probleme a ce niveau; j'ai installe la sdl avec Fink, j'ai fait un updatedb de locate.database; bref...)

Si vous avez une solution pour moi...
0