Rechercher : dans
Par :

Problème SDL sous mac

Dernière réponse le 3 fév 2009 à 00:08:19 lebesgue, le 22 nov 2008 à 01:23:34 
 Signaler ce message aux modérateurs

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

Configuration: Mac OS X
Safari 525.20.1

Meilleures réponses pour « Problème SDL sous mac » dans :
Antislash sous Mac Voir Il n'y a pas de caractère antislash (barre oblique inverse) sur le clavier Mac. Néanmoins, il est possible de saisir ce caractère en utilisant la combinaison suivante : Alt + Maj + /
Quelle est mon adresse MAC ? Voir L'adresse MAC est l'adresse de la carte physique. Elle est en théorie unique pour chaque carte réseau, et le début de l'adresse MAC indique le vendeur. Pour connaître son adresse MAC: Sous Windows Ouvrez une fenêtre MS-Dos et tapez ipconfig...
Pipe / Barre verticale sous Mac VoirPour saisir le caractère pipe (|) sous Mac OS, il suffit de saisir la combinaison de touches clavier suivante : Alt + Maj + L
Tilde sous Mac VoirPour saisir le caractère tilde (~) sous Mac OS, il suffit de saisir la combinaison de touches clavier suivante : Alt + n
Entretenir et réparer Mac OS 10 VoirL’entretien de base Les différentes étapes de réparation du disque de démarrage Démarrage extensions désactivées Démarrage et réparation à partir du CD ou du DVD d’installation de Mac OS Démarrage en "Single User mode" et procédure "fsck"...
Télécharger NTFS for Mac OS X VoirAccès total en lecture et en écriture vers des volumes NTFS NTFS for Mac® OS X fournit un accès total (lecture ou écriture, formatage) vers des partitions NTFS. Compatible avec toutes les versions de NTFS Toutes les versions NTFS sont prises en...

1

mype, le 22 nov 2008 à 01:31:36

Verifie que tu as bien ecrit l'en tete du main

Répondre à mype

2

lebesgue, le 22 nov 2008 à 01:36:56

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...

Répondre à lebesgue

3

lebesgue, le 22 nov 2008 à 01:40:23

Et même quand je met int main(int argc, char *argv[ ]) j'ai la même erreur...

Répondre à lebesgue

4

mype, le 22 nov 2008 à 01:50:40

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

Répondre à mype

5

lebesgue, le 22 nov 2008 à 01:53:31

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

Répondre à lebesgue

6

lebesgue, le 22 nov 2008 à 01:53:32

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

Répondre à lebesgue

7

mype, le 22 nov 2008 à 01:58:01

Dans ce cas je vois pas :(
peut etre un probleme de lien...

Répondre à mype

8

rhum1, le 31 jan 2009 à 15:11:20

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[])

Répondre à rhum1

9

rhum1, le 31 jan 2009 à 15:15:32

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

Répondre à rhum1

10

 Sheelda, le 3 fév 2009 à 00:08:19

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...

Répondre à Sheelda