Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1616 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [C][OSX][LibSDL] Compilation OK, mais problème d'exécution...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C][OSX][LibSDL] Compilation OK, mais problème d'exécution...

n°2117983
the_bigboo
Posté le 22-12-2011 à 17:00:44  profilanswer
 

Bonjour,
 
certains pourront dire que je cherche les problèmes ^^ J'ai récemment décidé de me mettre au C.
Sur les conseils d'un collègue, j'ai téléchargé et déployé la librairie SDL, qui à l'avantage d'être normalement portable...
 
Toutefois, étant sous mac, je n'avais pas envie de m'encombrer d'un bootcamp avec un visual studio...
 
Donc j'ai tenté de faire ça via codeblocks... Qui a l'avantage de proposer des projets SDL en natif
La compilation de remonte aucune erreur. cependant l'exécution... C'est une autre histoire !
 
Le code est simple, voilà ce que j'ai mis dans ma fonction main :

Code :
  1. if (SDL_Init(SDL_INIT_EVERYTHING) == -1)
  2. {
  3. fprintf(stderr, "Error while initializing SDL library : %s\n", SDL_GetError()); // Ecriture de l'erreur
  4. exit(EXIT_FAILURE); // On quitte le programme
  5. }
  6. printf("Launching SDL...\n" );
  7. SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE | SDL_DOUBLEBUF);
  8. int continuer = 1;
  9. SDL_Event event;
  10. while (continuer)
  11. {
  12.     SDL_WaitEvent(&event);
  13.     switch(event.type)
  14.     {
  15.         case SDL_QUIT:
  16.             continuer = 0;
  17.             break;
  18.     }
  19. }


 
Faire fonctionner la librairie avec Lion (Donc OSX 10.7) à l'air d'être un défi...
Le même code compilé sous Visual Studio, et sous Debian fonctionne à merveille

Citation :


Dec 22 16:44:21 arnault-mac.groupejet.priv Test[21723] <Error>: kCGErrorInvalidConnection: CGSGetCurrentCursorLocation: Invalid connection
Dec 22 16:44:21 arnault-mac.groupejet.priv Test[21723] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
Dec 22 16:44:21 arnault-mac.groupejet.priv Test[21723] <Error>: kCGErrorInvalidConnection: CGSGetCurrentCursorLocation: Invalid connection
Dec 22 16:44:21 arnault-mac.groupejet.priv Test[21723] <Error>: kCGErrorInvalidConnection: CGSNewWindowWithOpaqueShape: Invalid connection
2011-12-22 16:44:21.094 Test[21723:60b] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Error (1002) creating CGSWindow on line 263'
*** First throw call stack:
(
 0   CoreFoundation                      0x00007fff91c04286 __exceptionPreprocess + 198
 1   libobjc.A.dylib                     0x00007fff9695cd5e objc_exception_throw + 43
 2   CoreFoundation                      0x00007fff91c040ba +[NSException raise:format:arguments:] + 106
 3   CoreFoundation                      0x00007fff91c04044 +[NSException raise:format:] + 116
 4   AppKit                              0x00007fff8dbde90b _NSCreateWindowWithOpaqueShape2 + 755
 5   AppKit                              0x00007fff8db2c224 -[NSWindow _commonAwake] + 1875
 6   AppKit                              0x00007fff8db2aebc -[NSWindow _commonInitFrame:styleMask:backing:defer:] + 1871
 7   AppKit                              0x00007fff8db29f0a -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1502
 8   AppKit                              0x00007fff8db298db -[NSWindow initWithContentRect:styleMask:backing:defer:] + 47
 9   SDL                                 0x0000000105e35e1d SDL_SoftStretch + 24461
 10  SDL                                 0x0000000105e3457d SDL_SoftStretch + 18157
 11  SDL                                 0x0000000105e29043 SDL_SetVideoMode + 595
 12  Test                        0x0000000105dfbc52 aw_createMainWindow + 162
 13  Test                        0x0000000105dfbb45 aw_launch + 69
 14  Test                        0x0000000105dfbd0b main + 43
 15  Test                        0x0000000105dfbaf4 start + 52
 16  ???                                 0x0000000000000001 0x0 + 1
)
terminate called throwing an exceptionAbort trap: 6


 
Ma question est donc simple: quelqu'un ici a t-il déjà réussi à faire tourner cette librairie sous Lion ?
 
Merci de votre aide, ou de votre éclaircissement sur le problème... :jap:

mood
Publicité
Posté le 22-12-2011 à 17:00:44  profilanswer
 

n°2118104
the_bigboo
Posté le 23-12-2011 à 10:08:10  profilanswer
 

Personne :??:

n°2118167
Terminapor
I'll see you rise.
Posté le 23-12-2011 à 18:37:51  profilanswer
 

Essaie déjà de remplacer sdl_init_everythings par SDL_INIT_VIDEO, et aussi tente de virer le doublebuf / changer sdl_hwsurface en sdl_swsurface


---------------
Perhaps you don't deserve to breathe
n°2118175
the_bigboo
Posté le 23-12-2011 à 21:03:58  profilanswer
 

Peu importe en fait (Et j'ai essayé avec INIT EVERYTHING, et sans double buffer). Quelle que soit la façon dont la lib SDL est initialisée, ca plante bien avant de pouvoir générer la surface.

 

Qui plus est, lors de la compilation de la librairie, j'ai eu plein d'avertissement de type deprecated, et de symboles non défini et de pointeurs invalides.

 

Alors je me dis tout simplement que SDL n'a pas encore été adapté pour Lion... :spamafote:


Message édité par the_bigboo le 23-12-2011 à 21:05:27
n°2118181
Terminapor
I'll see you rise.
Posté le 23-12-2011 à 21:54:14  profilanswer
 

Fort possible, à la rigueur regarde du côté de la SFML voir si c'est compatible, sinon tente la version 1.3 beta de la sdl


---------------
Perhaps you don't deserve to breathe
n°2118184
the_bigboo
Posté le 23-12-2011 à 23:08:00  profilanswer
 

J'ai testé la version 1.3 également sans plus de succès... Même avertissements (ou presque) lors de la compilation de la lib SDL, et même résultat lorsque je compile mon code et que j'essaye de l'exécuter...

 

Bref du coup, je révise un peu mon jugement concernant OSX... Pour faire du dev en C, ce n'est pas franchement l'idéal...

 

Du coup, j'ai viré mac OSX, et j'ai mis un windows 7 (je veux pas me faire chier avec un dual boot...), certains diront que c'est une hérésie, mais du fait que je compte évoluer sur de l'openGL à terme, et que les solutions de virtualisation n'offre pas de performance côté accélération graphique...

 

J'ai également testé la dernière Ubuntu qui me plaisait bien, mais des soucis de pilotes subsistent, et la version qui doit sortir en avril doit justement offrir une meilleure prise en charge de mon macbook...


Message édité par the_bigboo le 23-12-2011 à 23:09:01
n°2118195
gilou
Modérateur
Modzilla
Posté le 24-12-2011 à 08:35:17  profilanswer
 

Le problème a pas l'air de venir de OSX, mais  
soit du code de la librairie qui est pas complètement porté pour  OSX ,
soit de pbs de config du makefile, et la, c'est peut être parce qu'il est pas compatible avec CodeBlocks (flags compilateurs différents, etc)
il faut peut être plutôt essayer d'abord d'utiliser le même compilo sur OSX (en 2009, c'était avec XCode apparemment, au vu du web) que ceux qui ont écrit la partie du code de la librairie sous OSX et ont bien du la tester.
A+,


Message édité par gilou le 24-12-2011 à 08:40:24

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2118214
the_bigboo
Posté le 24-12-2011 à 11:15:21  profilanswer
 

Justement non, c'est ce que je me suis dit aussi, si quelqu'un a réussi, il suffit que je trouve le source d'une appli déjà compilée qui fonctionne, mais j'en ai pas trouvé...
 
J'ai essayé le gcc, et le apple gcc 4.2 sans plus de succès. De toute facon, la lib SDL ne fournit pas les templates du framework SDL pour lion, ca existe pour Snow léopard, mais pas pour lion sur Xcode 4. Ce qui tend à confirmer ce que je pensais.
 
Effectivement il doit surement exister des magouilles avec les flags de compilation...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [C][OSX][LibSDL] Compilation OK, mais problème d'exécution...

 

Sujets relatifs
[JQuery] MAJ progressbar (jquery ui) : Execution synchrone ?Problème avec les signaux
[C] Tri par insertion simple & pointeurs de dates[Objective-C] Récupérer une variable d'un vue
Petit problème de regexpproblème d'image sur un jeu
Problème sur FMyScript (clone de VDM)probleme abstracttabemodel jtable java
Probleme de scrollingConvertir C++ en C
Plus de sujets relatifs à : [C][OSX][LibSDL] Compilation OK, mais problème d'exécution...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR