[Résolu] Compilation OS X

Démarré par Noxneo, 04 Novembre 2010 à 06:46

0 Membres et 1 Invité sur ce sujet

Copié collé d'un mail à Chris pour référence:

Salut,

Je voulais poster ça sur le forum mais il est down (?) pour le moment.
Quoi qu'il en soit...
J'ai réussi à compiler le code du commit
'2c3441fc4dce1d6056fc67268e16819ecc3694ab' :

a) Cependant il faut que je commente la ligne:

# tests
add_subdirectory(tests)

du CMakeLists.txt principal, sinon j'ai l'erreur suivante:

[ 81%] Built target solarus_static
[ 82%] Built target solarus
[ 83%] Built target zsdx_command
[ 83%] Generating compiled_maps
[100%] Built target zsdx_data
[100%] Built target Init
Linking CXX executable PixelMovement
Undefined symbols:
"_main", referenced from:
     start in crt1.10.6.o
    (maybe you meant: _SDL_main, Khorneth::get_main_sprite()      )
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[2]: *** [tests/PixelMovement] Error 1
make[1]: *** [tests/CMakeFiles/PixelMovement.dir/all] Error 2
make: *** [all] Error 2

b) Une fois cette ligne commentée, le reste compile. Par contre si
j'essaye de lancer zsdx après un make install:

Last login: Thu Nov  4 00:41:41 on ttys000
Guillaume-Ardaud:~ gardaud$ zsdx
2010-11-04 00:45:11.843 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x180f1d0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.846 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x7087b0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.848 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x180f7a0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.849 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x708b10 of class NSCFDictionary autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.849 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0acc0ec of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.850 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x708850 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.850 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c1c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.851 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x708bc0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.852 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.852 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x7087c0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.853 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1f8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.853 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x7087c0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.854 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.855 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1f8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.855 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.856 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1f8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.856 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.857 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.858 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ad1c8c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.858 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18019b0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.863 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1813a30 of class __NSFontTypefaceInfo autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.864 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x708170 of class NSAffineTransform autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.864 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70ce90 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.865 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70c410 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.871 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1816250 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.872 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70d200 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.873 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70d2a0 of class NSCFSet autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.873 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18162a0 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.874 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18163e0 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.874 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18164e0 of class NSCFSet autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.875 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a1f28 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.876 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a7e18 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.876 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a8d68 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.877 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70d300 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.877 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1816450 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.878 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a7708 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.879 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a3038 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.879 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a3a08 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.880 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a84c8 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.890 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a7988 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.891 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70c900 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.892 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a16b8 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.893 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70c330 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.893 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70c840 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.894 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1816620 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.895 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70c410 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.896 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a89b8 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.896 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa01a19d8 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.897 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1802eb0 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.898 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70d930 of class NSCFCharacterSet autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.899 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70d9b0 of class NSDeviceRGBColor autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.899 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x7087d0 of class NSCFNumber autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.900 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1816970 of class NSCalibratedWhiteColor autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.901 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1816e70 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:11.901 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1817330 of class NSCFDictionary autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.066 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18289b0 of class NSMutableParagraphStyle autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.067 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1828a00 of class NSCFDictionary autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.068 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f270 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.069 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1828ff0 of class __NSFontTypefaceInfo autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.070 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18292c0 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.070 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18293c0 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.071 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ac632c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.072 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1828c40 of class _NSThemeCloseWidget autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.072 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1829a40 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.073 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18293c0 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.074 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ac632c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.074 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1829a60 of class _NSThemeWidget autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.075 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18295c0 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.076 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18293c0 of class NSFont autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.077 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0xa0ac632c of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.077 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x182a0a0 of class _NSThemeWidget autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.078 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x1827ca0 of class NSCFArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.079 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x18293e0 of class NSTrackingArea autoreleased with no pool in place - just leaking
Thu Nov  4 00:45:12 Guillaume-Ardaud.local solarus[16419] <Error>: kCGErrorInvalidConnection: CGSGetCurrentCursorLocation: Invalid connection
Thu Nov  4 00:45:12 Guillaume-Ardaud.local solarus[16419] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
2010-11-04 00:45:12.080 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f110 of class NSTrackingArea autoreleased with no pool in place - just leaking
Thu Nov  4 00:45:12 Guillaume-Ardaud.local solarus[16419] <Error>: kCGErrorInvalidConnection: CGSGetCurrentCursorLocation: Invalid connection
Thu Nov  4 00:45:12 Guillaume-Ardaud.local solarus[16419] <Error>: kCGErrorInvalidConnection: CGSNewWindowWithOpaqueShape: Invalid connection
2010-11-04 00:45:12.081 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f3a0 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.081 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70e500 of class NSException autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.081 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f3f0 of class _NSCallStackArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.082 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f590 of class _NSCallStackArray autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.082 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f2c0 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.083 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x814c00 of class NSCFString autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.084 solarus[16419:903] *** __NSAutoreleaseNoPool(): Object 0x70f2e0 of class NSConcreteMutableData autoreleased with no pool in place - just leaking
2010-11-04 00:45:12.084 solarus[16419:903] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Error (1002) creating CGSWindow'
*** Call stack at first throw:
(
   0   CoreFoundation                      0x9186abba __raiseError + 410
   1   libobjc.A.dylib                     0x91e7a509 objc_exception_throw + 56
   2   CoreFoundation                      0x9186a8e8 +[NSException raise:format:arguments:] + 136
   3   CoreFoundation                      0x9186a85a +[NSException raise:format:] + 58
   4   AppKit                              0x987e1c9a _NSCreateWindowWithOpaqueShape2 + 519
   5   AppKit                              0x98766bbe -[NSWindow _commonAwake] + 1624
   6   AppKit                              0x98763886 -[NSWindow _commonInitFrame:styleMask:backing:defer:] + 1524
   7   AppKit                              0x987624d9 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1568
   8   AppKit                              0x98761eb3 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 71
   9   SDL                                 0x0024a67f SDL_SoftStretch + 27215
   10  SDL                                 0x002495f8 SDL_SoftStretch + 22984
   11  SDL                                 0x0023d14f SDL_SetVideoMode + 623
   12  solarus                             0x0008442f _ZN12VideoManager14set_video_modeENS_9VideoModeE + 373
   13  solarus                             0x0008461b _ZN12VideoManager22set_default_video_modeEv + 25
   14  solarus                             0x000846db _ZN12VideoManager22set_initial_video_modeEv + 189
   15  solarus                             0x00084f41 _ZN12VideoManagerC1Eb + 1137
   16  solarus                             0x0008511d _ZN12VideoManager10initializeEiPPc + 269
   17  solarus                             0x00080d22 _ZN6System10initializeEiPPc + 54
   18  solarus                             0x000c6dff _ZN7SolarusC1EiPPc + 25
   19  solarus                             0x0000cb3a main + 32
   20  solarus                             0x0000cb11 start + 53
)
/usr/local/bin/zsdx: line 2: 16419 Trace/BPT trap          solarus -datapath=/usr/local/share/solarus/zsdx
Guillaume-Ardaud:~ gardaud$


Voilà :D Le trace devrait t'être utile...j'attends de ton avis sur la question.

A+
Guillaume

a) Commenter la ligne add_subdirectory(tests) ne fait que désactiver la compilation de la suite de tests, donc ça n'empêche pas le jeu de tourner. Les tests sont de toute façon une nouveauté récente pas encore bien stable.
b) Je n'ai aucune idée pour cette erreur, ça se produit dans des classes qui ont l'air d'être spécifiques à Mac OS X...
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

a) Oui c'est sûr, mais dans un monde parfait autant avoir tout qui compile :P
b) Oui mais ça se propage de SDL_SetVideoMode...quand j'aurais le temps je bidouillerais tout ça, voir si c'est peut être une option d'init qui merde sur mon install de la SDL ou quoi (je cherche même plus à comprendre :D )

Pour la SDL commence peut-être par compiler un exécutable bidon qui se contente de créer une fenêtre SDL. Au moins tu seras sûr que SDL marche chez toi.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Oui, j'ai fait ça et c'est le cas.

24 Septembre 2011 à 20:07 #5 Dernière édition: 24 Septembre 2011 à 21:05 par Guillaume
J'essaye actuellement de compiler sous Lion avec 10.7, en utilisant brew.

Étape 1: configuration de la compilation

Éditer /etc/paths pour que /usr/local/bin soit avant /usr/bin

brew install sdl --use-gcc
brew install sdl_ttf
brew install sdl_image
brew install lua
brew install physfs
brew install libvorbis

Choper libmodplug ici. cd dans le répertoire, ./configure, make, make install.

cmake .

Étape 2: Compilation

Commenter la dernière ligne du CMakeLists.txt ("add_subdirectory(tests)") - les tests ne buildent pas sur OS X mais osef.

Remplacer "AL/*" dans Sound.h et Music.h par "OpenAL/*" (fixed in git 64c6b61)

make

make install

vlag67 (membre du forum) m'a proposé de l'aide pour le portage Mac OS X. On a échangé quelques e-mails, et apparemment, il a réussi à aller un peu plus loin que vous. Le jeu se lance et ça plante après l'écran de sélection des fichiers.

En résumé, il a déjà mis des #ifdef pour les répertoires des #include car il n'a pas dû utiliser cmake correctement pour déterminer ces répertoires. Par contre après c'est plus intéressant. Il dit que pour que la SDL marche sur Mac OS X il faut soit linker avec SDLmain en plus (sous Windows c'est aussi ça que je dois faire), soit mettre l'environnement X11 à la place de Quartz.


Voici ce qu'il dit plus en détail :

-----------------------------------------
Yop

Ok j'ai un peu lutté parce que je n'aime que moyennement les outils genre brew, donc j'ai compilé une grande partie a la main et j'ai du changer 2-3 trucs dans le cMakeCache

J'ajouterais qu'en plus de OpenAl/ a rajouter dans les sources pour mac, ca s'applique aussi a SDL_ttf et SDL_image (au cas ou je n'arriverais a rien et que tu veuille voir ce que ca donne si tu as un mac a proximité)
Perso je le met en dur dans le code a coup de #ifdef, ca évite d'avoir a y revenir plus tard ^^
-----------------------------------------
Donc chez moi la pile d'adressage passe par SDL_SetVideoMode() de VideoManager::set_video_mode(), donc l'init passe bien si on excepte les warning NSAutoreleaseNoPool()

En regardant vite fait sur le net, il faudrait apparement linker SDL_main quand on compile le main.cc (en passant, si on inclu de l'obj-C dans une source C++, il faut le renommer en .m )
Apres une rapide recherche, en fait si on ne passe pas par SDL_main sur OSX avec SDL 1.2, il faut mettre l'environnement sur X11 a la place de Quartz.

Pour le verifier sur main.cc j'ai juste rajouté
#include "SDL_getenv.h"

puis dans le main
SDL_putenv((char*)"SDL_VIDEODRIVER=x11") ;

Et ca tourne au poil :)

Comme je ne connais absolument pas la structuration du projet je te (ou Noxneo) laisse faire le menage. Dans le pire des cas si vraiment vous n'avez pas le temps pour le portage, je peux mettre les mains dans le cambouis mais je ne connais vraiment ni le projet, ni excellemment bien OSX et la SDL, donc je pense que vous devriez être plus rapide a priori.

Voila j'espere avoir été utile, et éventuellement continuer si vous en avez besoin.

-----------------------------------------

Bon en fait j'ai parlé un peu vite, l'appli plante après l'écran de sélection des fichiers sur un beau

terminate called after throwing an instance of 'std::logic_error'
  what():  This surface should have an 8-bit pixel format

Je ne sais pas si ca peut venir d'une ressource manquante ou d'un soucis de code, mais je rapporte en attendant.
Au final ce message n'a aucun intérêt, si ce n'est dire que je regarderais un peu plus près demain ^^
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Le hack du putenv() permet de démarrer le jeu mais il y a toujours un crash après l'écran de choix d'une partie.

commit a66d4af1669ffe329b90b755924a34c34a659fcd
Author: Christopho <christopho@solarus-engine.org>
Date:   Tue Dec 13 02:01:00 2011 +0100


http://bpaste.net/show/20918/

(Le crash se produit entre la création d'une nouvelle sauvegarde et le lancement de l'intro. Plante avant l'intro).

Apparemment c'est un problème d'endianness. vlag67 a résolu le problème et il vous donnera plus de détails (je lui ai ajouté l'accès au forum).
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Salut !

Donc au final ce qu'il fallait rajouter pour faire fonctionner le projet.

. Une fois que les dépendances sont installées, modifier les include de OpenAL.h (Music.h), SDL_ttf (TextSurface.h), et SDL_image (Surface.cpp) comme le préconise Guillaume et rajouter
#include "SDL_endian.h" dans Color.h
et
#include "SDL.h" dans Main.cc

.Telecharger les fichiers SDL-devel pour Mac (http://www.libsdl.org/download-1.2.php)

.Copier SDLmain.m et SDLMain.h dans src/ et include/ du projet

.Rajouter dans le src/CMakeList
set(SDLMain SDLMain.m)

add_executable(solarus
  ${main_source_file}
  ${SDLMain}
)

. A ce niveau la, ca compile mais les couleurs sont étrange et l'appli plante toujours en sortie d'écran titre.

. Pour les couleurs c'est un soucis du au little endian des Mac, donc j'ai remplacé les CreateRGBSurface des constructeurs de Color.cpp et Surface.cpp par
#if SDL_BYTEORDER == SDL_BIG_ENDIAN
      Uint32 rmask = 0xff000000;
      Uint32 gmask = 0x00ff0000;
      Uint32 bmask = 0x0000ff00;
      Uint32 amask = 0x000000ff;
#else
      Uint32 rmask = 0x0000ff00;
      Uint32 gmask = 0x00ff0000;
      Uint32 bmask = 0xff000000;
      Uint32 amask = 0x00000000;
#endif
  this->internal_surface = SDL_CreateRGBSurface(SDL_HWSURFACE, width, height, 32, rmask, gmask, bmask, amask)

C'est un peu crade mais ca passe, rien ne vous empêche de faire ca en mieux ^^
Comme dit, je suis surpris que la SDL ne gère pas ca nativement.
(Entre parenthèse quand on switche les résolutions d'écran depuis le menu option, j'ai l'impression que certains reviennent au big endian ^^ )

. Voila ou j'en suis pour le moment, l'appli se lance bien mais plante toujours en sortie d'écran titre, mais fonctionne bien si on ...

. ... Commente la ligne Debug::check_assertion() dans PixelBits.cpp, mais il n'y aura du coup aucun test de collision pour l'épée. Je ne sais pas trop si c'est lié au masque du pixel perfect qu'il faudrait aussi faire passer en little endian (c'est possible ? ) ou à des ressources foireuses/mal extraites mais bref on peut aller jusqu'a la recherche de l'épée sans rencontrer de bug.
Reste juste a trouver pourquoi format->BitsPerPixel vaut 32 ^^

. Relancer cmake . , make et sudo make install

Normalement vous devriez arriver au meme point que moi.

Dites moi si j'ai oublié quelque chose :)

Je pense que c'est les méta-données du fichier png que je lis mal, parce qu'il est certain que c'est bien du PNG 8 bits pour les sprites avec collision au pixel près (mon code compte là-dessus).
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

14 Décembre 2011 à 20:55 #11 Dernière édition: 15 Décembre 2011 à 02:34 par vlag67
Effectivement, apparemment le problème serait aussi spécifique à SDL sur OSX, pour la fonction IMG_Load_RW(,); de Surface.cpp

CitationAre you loading the BMP through SDL, or SDL_image? Both should be able
to give you an 8-bit, paletted surface.
Is it possible you're using SDL_image on Mac OS X? Because that tries to
use Apple's decoders by default, and those don't play around with palettes.
(Message sur un forum datant de juin 2011)

Mes tests semblent le confirmer :

J'ai rajouté (oui toujours pour le test, je sais que c'est mega crade ^^ )
SDL_Surface* get8BitSurface(SDL_Surface* surf32)
{    
   SDL_Surface* surf8 = SDL_CreateRGBSurface(SDL_SWSURFACE, surf32->w, surf32->h, 8, 0, 0, 0, 0);
   
   SDL_Color palette[256];
   for (int i = 0; i < 256; i++)
   {
       palette[i].r = i;
       palette[i].g = i;
       palette[i].b = i;
       palette[i].unused = 0;
   }
   SDL_SetPalette(surf8, SDL_LOGPAL, palette, 0, 256);
   SDL_BlitSurface(surf32, NULL, surf8, NULL);
   
   return surf8;
}

A utiliser dans PixelBits.cpp, utiliser cette fonction pour avoir un buffer 8bits a la place de surface.get_internal_surface()

Ca rame au lancement du jeu, mais les collisions sont la.

Reste a savoir comment récupérer les images en 8bits par défaut...

J'ai lu vite fait les derniers messages- cool si ça marche.

Par contre j'espère que la méthode ne passe PAS par X11 car ce serait moche.

Yep c'est presque bon, ca marchouille ^^

Le dernier problème, en plus de rajouter tout ca au projet proprement, est de trouver pourquoi sur Mac, les SDL_Surfaces* sont automatiquement chargés en mode 32bpp, meme si l'image originale est en 8bpp (Quoique on demande explicitement 32bpp lors du CreateSDLSurface(), et ca ne m'étonne qu'a moitié que Cocoa decode par défaut "sans palette" ^^ ).

De plus, si je converti l'image 32bpp directement en mémoire après l'avoir chargée, celle-ci s'affiche en niveau de gris et sans alpha, logique (cela dit les collisions sur l'épée fonctionnent), donc sans compter que cette solution ne me plait pas, je ne sais pas si c'est vraiment optimal de garder une image 8bpp en mémoire (à moins que j'ai merdé dans la fonction de conversion, quelqu'un peut jeter un oeil ? )

Du coup a moins de conserver un buffer 8bpp privé dans la classe PixelBits ou Surface, ou encore d'arriver à trouver dans la doc une fonction qui change le comportement par défaut de Cocoa/SDL/whatever pour charger directement la surface avec le bpp de l'image d'origine, je ne vois pas comment contourner le problème...

Je regarderais encore demain


Sinon rassure-toi, si j'ai rajouté SDLMain.m au projet c'est justement pour ne pas avoir à utiliser X11 à la place de Quartz  ^_^

16 Décembre 2011 à 22:51 #14 Dernière édition: 25 Janvier 2012 à 23:39 par vlag67
Pour résoudre complètement le problème, il ne reste plus qu'a remplacer le constructeur de PixelBits.cpp par

PixelBits::PixelBits(Surface& surface, const Rectangle& image_position) {
   SDL_PixelFormat* format = surface.get_internal_surface()->format;

#ifdef __APPLE__
 Debug::check_assertion(format->BitsPerPixel % 8 == 0
     && format->BitsPerPixel != 24, "This surface should have an 8/16/32-bit pixel format");

 int pxIn32Bit = 32 / format->BitsPerPixel;
 uint32_t pxMask = 0xffffffff << (32 - format->BitsPerPixel);

 uint32_t colorkey = format->colorkey;
#else
 Debug::check_assertion(format->BitsPerPixel == 8,
     "This surface should have an 8-bit pixel format");

 uint8_t colorkey = (uint8_t) format->colorkey;
#endif

 width = image_position.get_width();
 height = image_position.get_height();

 nb_integers_per_row = width >> 5; // width / 32
 if ((width & 31) != 0) { // width % 32 != 0
   nb_integers_per_row++;
 }
   
#ifdef __APPLE__
 uint32_t* pixels = (uint32_t*) surface.get_internal_surface()->pixels;
#else
 uint8_t* pixels = (uint8_t*) surface.get_internal_surface()->pixels;
#endif
 int pixel_index = image_position.get_y() * surface.get_width() + image_position.get_x();

 bits = new uint32_t*[height];
 for (int i = 0; i < height; i++) {
   bits[i] = new uint32_t[nb_integers_per_row];

   // fill the bits for this row
   int k = -1;
   uint32_t mask = 0x00000000;
   for (int j = 0; j < width; j++) {

     if (mask == 0x00000000) {
       k++;
       mask = 0x80000000;
       bits[i][k] = 0x00000000;
     }
#ifdef __APPLE__
     if ((pixels[pixel_index / pxIn32Bit] << pixel_index % pxIn32Bit * format->BitsPerPixel & pxMask) != colorkey) {
#else
     if (pixels[pixel_index] != colorkey) {
#endif
       bits[i][k] |= mask;
     }
     mask >>= 1;
     pixel_index++;
   }
   pixel_index += surface.get_width() - width;
 }
}


Ca va rendre la détection de collision pixel perfect indépendant de l'image en paramètre. Normalement ca devrait résoudre le problème.
Bien sur ce code reste a optimiser, et je ne sais pas dans quelle mesure il est portable (il y a tellement de surprises ... ) mais ca permet de jouer sur Mac :)


Quelqu'un peut faire un test sur sa machine ? ^^

17 Décembre 2011 à 07:23 #15 Dernière édition: 17 Décembre 2011 à 07:40 par vlag67
Et j'en profite pour faire un package de la version snow leopard basée sur le commit ed6bd84649 et qui intègre les modifications du dessus.

http://dl.dropbox.com/u/31755496/SolarusDX.zip

Enjoy

Ca marche nickel pour moi, et sur Lion, merci pour votre travail !

Du coup par contre il faut réintégrer ces changements à chaque fois qu'on veut compiler une nouvelle version?

Je pense que je vais faire un commit qui effectue les changements de vlag67 dans une condition du genre #ifdef APPLE.

Bon, sinon, j'ai reçu un mail de quelqu'un sous Lion et chez ça plante :

Bonjour,

Tout d'abord, félicitations pour Zelda Mystery of Solarus DX! J'avais déjà adoré la version précédente malgré ses limitations, mais de l'avoir entièrement retravaillé en C++/Lua, cela a grandement amélioré sa qualité.

Malheureusement, dans ma frénésie à vouloir y jouer absolument et le plus rapidement possible, je me suis retrouvé nez à nez avec un crash. Je ne suis pas fâché, ça arrive même aux meilleurs

J'ai téléchargé la version MacOS X du jeu. J'ai vu que le support était pour Leopard uniquement à priori, mais comme je possède Lion (10.7.2), j'ai quand même tenté ma chance. Le jeu démarre (cool!), j'arrive à l'écran titre (génial!). Je vais dans les options pour changer le mode fenêtré et passer en mode plein écran... et là le crash survient.

Je relance le jeu, mais impossible. Comme le jeu a sauvegardé mes options, il passe automatiquement en plein écran au démarrage. Conclusion: je n'arrête pas de crasher à chaque démarrage du jeu.

Une réinstallation du jeu ne résout pas le problème. Je me demande si il n'existe pas un fichier de préférences à modifier ou supprimer pour repasser en mode fenêtré (qui a l'air de très bien marcher). J'ai cherché un tel fichier sans le trouver. Avez-vous une idée pour me débloquer?

Pour les détails, je possède un MacBook Pro (début 2011) 17 pouces, avec MacOS X Lion 10.7.2. Deux cartes graphiques: Intel HD Graphics 3000 (utilisation normale) et AMD Radeon HD 6750M (pour plus de puissance). Je ne pense pas que mon écran supporte le 640x480 en plein écran (le minimum de résolution étant 800x600). Peut être que c'est une piste à creuser.

Merci pour votre réponse, et félicitations encore pour votre superbe création.

Sonic Hachelle-Bee

PS: J'ai copié le Crash Reporter si cela peut vous être utile:

Process:         solarus [354]
Path:            /Applications/SolarusDX.app/Contents/MacOS/../Resources/solarus
Identifier:      ???
Version:         ??? (2.0)
Code Type:       X86-64 (Native)
Parent Process:  sh [350]

Date/Time:       2011-12-17 12:21:02.533 +0100
OS Version:      Mac OS X 10.7.2 (11C74)
Report Version:  9

Interval Since Last Report:          372041 sec
Crashes Since Last Report:           7
Per-App Interval Since Last Report:  49 sec
Per-App Crashes Since Last Report:   5
Anonymous UUID:                      E71945BD-3866-44B1-8205-8C47711CD003

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_CRASH (SIGSEGV)
Exception Codes: 0x0000000000000000, 0x0000000000000000

Application Specific Information:
objc[354]: garbage collection is OFF

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   solarus                        0x000000010008c177 char* std::copy<char*, char*>(char*, char*, char*) + 46
1   solarus                        0x000000010008c19d char* std::__uninitialized_copy_aux<char*, char*>(char*, char*, char*, std::__true_type) + 37
2   solarus                        0x000000010008c1cb char* std::uninitialized_copy<char*, char*>(char*, char*, char*) + 44
3   solarus                        0x000000010008c1f6 char* std::__uninitialized_copy_a<char*, char*, char>(char*, char*, char*, std::allocator<char>) + 41
4   solarus                        0x000000010008c443 void std::vector<char, std::allocator<char> >::_M_range_insert<char*>(__gnu_cxx::__normal_iterator<char*, std::vector<char, std::allocator<char> > >, char*, char*, std::forward_iterator_tag) + 481
5   solarus                        0x000000010008c691 void std::vector<char, std::allocator<char> >::_M_insert_dispatch<char*>(__gnu_cxx::__normal_iterator<char*, std::vector<char, std::allocator<char> > >, char*, char*, std::__false_type) + 61
6   solarus                        0x000000010008c6c8 void std::vector<char, std::allocator<char> >::insert<char*>(__gnu_cxx::__normal_iterator<char*, std::vector<char, std::allocator<char> > >, char*, char*) + 52
7   solarus                        0x0000000100089697 Sound::decode_file(std::string const&) + 755
8   solarus                        0x000000010008999e Sound::load() + 208
9   solarus                        0x000000010008a665 Sound::load_all() + 409
10  solarus                        0x00000001000d4f62 TitleScreen::init_phase_black_screen() + 46
11  solarus                        0x00000001000d5436 TitleScreen::TitleScreen(Solarus&) + 124
12  solarus                        0x00000001000b29f0 LanguageScreen::update() + 56
13  solarus                        0x00000001000f0449 Solarus::update() + 51
14  solarus                        0x00000001000f05d8 Solarus::main_loop() + 108
15  solarus                        0x0000000100005d81 SDL_main + 41
16  solarus                        0x0000000100006653 -[SDLMain applicationDidFinishLaunching:] + 71
17  com.apple.Foundation          0x00007fff94a5ade2 __-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_1 + 47
18  com.apple.CoreFoundation      0x00007fff8f6c9e0a _CFXNotificationPost + 2634
19  com.apple.Foundation          0x00007fff94a47097 -[NSNotificationCenter postNotificationName:object:userInfo:] + 65
20  com.apple.AppKit              0x00007fff95f5baa7 -[NSApplication _postDidFinishNotification] + 212
21  com.apple.AppKit              0x00007fff95f5b80d -[NSApplication _sendFinishLaunchingNotification] + 78
22  com.apple.AppKit              0x00007fff95f5a4d2 -[NSApplication(NSAppleEventHandling) _handleAEOpenEvent:] + 242
23  com.apple.AppKit              0x00007fff95f5a233 -[NSApplication(NSAppleEventHandling) _handleCoreEvent:withReplyEvent:] + 330
24  com.apple.CoreFoundation      0x00007fff8f713851 -[NSObject performSelector:withObject:withObject:] + 65
25  com.apple.Foundation          0x00007fff94a7d89b __-[NSAppleEventManager setEventHandler:andSelector:forEventClass:andEventID:]_block_invoke_1 + 101
26  com.apple.Foundation          0x00007fff94a7c822 -[NSAppleEventManager dispatchRawAppleEvent:withRawReply:handlerRefCon:] + 283
27  com.apple.Foundation          0x00007fff94a7c6b0 _NSAppleEventManagerGenericHandler + 105
28  com.apple.AE                  0x00007fff919c8c25 aeDispatchAppleEvent(AEDesc const*, AEDesc*, unsigned int, unsigned char*) + 200
29  com.apple.AE                  0x00007fff919c8b03 _ZL25dispatchEventAndSendReplyPK6AEDescPS_ + 38
30  com.apple.AE                  0x00007fff919c89f7 aeProcessAppleEvent + 250
31  com.apple.HIToolbox            0x00007fff92893b6d AEProcessAppleEvent + 102
32  com.apple.AppKit              0x00007fff95f5763d _DPSNextEvent + 1247
33  com.apple.AppKit              0x00007fff95f56cf5 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135
34  com.apple.AppKit              0x00007fff95f5362d -[NSApplication run] + 470
35  solarus                        0x00000001000064ac CustomApplicationMain + 349
36  solarus                        0x00000001000068b4 main + 240
37  solarus                        0x0000000100005d50 start + 52

Thread 1:: Dispatch queue: com.apple.libdispatch-manager
0   libsystem_kernel.dylib        0x00007fff905637e6 kevent + 10
1   libdispatch.dylib              0x00007fff8df5a5be _dispatch_mgr_invoke + 923
2   libdispatch.dylib              0x00007fff8df5914e _dispatch_mgr_thread + 54

Thread 2:
0   libsystem_kernel.dylib        0x00007fff90563192 __workq_kernreturn + 10
1   libsystem_c.dylib              0x00007fff8dfb6594 _pthread_wqthread + 758
2   libsystem_c.dylib              0x00007fff8dfb7b85 start_wqthread + 13

Thread 3:
0   libsystem_kernel.dylib        0x00007fff90563192 __workq_kernreturn + 10
1   libsystem_c.dylib              0x00007fff8dfb6594 _pthread_wqthread + 758
2   libsystem_c.dylib              0x00007fff8dfb7b85 start_wqthread + 13

Thread 4:
0   libsystem_kernel.dylib        0x00007fff90563192 __workq_kernreturn + 10
1   libsystem_c.dylib              0x00007fff8dfb6594 _pthread_wqthread + 758
2   libsystem_c.dylib              0x00007fff8dfb7b85 start_wqthread + 13

Thread 5:
0   libsystem_kernel.dylib        0x00007fff90563192 __workq_kernreturn + 10
1   libsystem_c.dylib              0x00007fff8dfb6594 _pthread_wqthread + 758
2   libsystem_c.dylib              0x00007fff8dfb7b85 start_wqthread + 13

Thread 6:
0   libsystem_c.dylib              0x00007fff8df8dd57 memmove$VARIANT$sse42 + 154
1   SDL                            0x00000001002b90ae SDL_SoftStretch + 16926
2   SDL                            0x00000001002b3487 SDL_GetThreadID + 247
3   SDL                            0x00000001002c17d9 SDL_ThreadID + 329
4   libsystem_c.dylib              0x00007fff8dfb48bf _pthread_start + 335
5   libsystem_c.dylib              0x00007fff8dfb7b75 thread_start + 13

Thread 7:: com.apple.audio.IOThread.client
0   libsystem_kernel.dylib        0x00007fff9056167a mach_msg_trap + 10
1   libsystem_kernel.dylib        0x00007fff90560d71 mach_msg + 73
2   com.apple.audio.CoreAudio      0x00007fff98b535b1 HALC_IOContext_Start + 151
3   com.apple.audio.CoreAudio      0x00007fff98b52316 HALC_ProxyIOContext::IOWorkLoop() + 294
4   com.apple.audio.CoreAudio      0x00007fff98b52151 HALC_ProxyIOContext::IOThreadEntry(void*) + 73
5   com.apple.audio.CoreAudio      0x00007fff98b5200c HALB_IOThread::Entry(void*) + 78
6   libsystem_c.dylib              0x00007fff8dfb48bf _pthread_start + 335
7   libsystem_c.dylib              0x00007fff8dfb7b75 thread_start + 13

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x00000001044f8ce6  rbx: 0x00000001044f8ce6  rcx: 0x0000000000000000  rdx: 0x00000001044f8ce4
  rdi: 0x00000001044f8ce6  rsi: 0x00000001044f8ce4  rbp: 0x00007fff5fbfd670  rsp: 0x00007fff5fbfd648
   r8: 0x000000000000004a   r9: 0x0000000106066008  r10: 0x0000000000000000  r11: 0x00000001044f8ce6
  r12: 0x00007fff5fbfdc54  r13: 0x00000000000f4270  r14: 0x00007fff91f04eef  r15: 0x000000000000000e
  rip: 0x000000010008c177  rfl: 0x0000000000000202  cr2: 0x000000010615c000
Logical CPU: 0

Binary Images:
       0x100000000 -        0x100188ff7 +solarus (??? - ???) <DC93CE0B-A257-3647-AA8B-642AE3C2154F> /Applications/SolarusDX.app/Contents/Resources/solarus
       0x100285000 -        0x1002f8fef +SDL (1.2.14 - 1.2.14) <E91595A6-E003-F5F1-31BE-56EDC93FF6D0> /Applications/SolarusDX.app/Contents/Frameworks/SDL.framework/Versions/A/SDL
       0x10030c000 -        0x100311ff7 +SDL_image (1.2.10 - 1.2.10) <1DAF42AB-519C-65E1-1353-8CFA7ACF880C> /Applications/SolarusDX.app/Contents/Frameworks/SDL_image.framework/Versions/A/SDL_image
       0x100315000 -        0x100318ff7 +SDL_ttf (2.0.6 - 2.0.10) <2F914044-380E-A820-4C59-4501538254F3> /Applications/SolarusDX.app/Contents/Frameworks/SDL_ttf.framework/Versions/A/SDL_ttf
       0x10031c000 -        0x100347fff  com.apple.audio.OpenAL (1.5.1 - 1.5.1) <5B954EC6-08B6-3255-932C-DDAB908E72F4> /System/Library/Frameworks/OpenAL.framework/Versions/A/OpenAL
       0x100356000 -        0x10037cfff +liblua5.1.dylib (??? - ???) <971E69F7-726E-C572-8F0C-990593F55B7F> /Applications/SolarusDX.app/Contents/Frameworks/liblua5.1.dylib
       0x100386000 -        0x1003a6ff7 +com.yourcompany.PhysFS (2.0.1 - 1) <14B18789-ABB9-ACB5-C322-839E73361DB1> /Applications/SolarusDX.app/Contents/Frameworks/PhysFS.framework/Versions/A/PhysFS
       0x1003b1000 -        0x100694fef +org.xiph.vorbis (1.2.3 - 1.2.3) <3F7B81DE-5776-3928-AC27-329B16B4A04D> /Applications/SolarusDX.app/Contents/Frameworks/Vorbis.framework/Versions/A/Vorbis
       0x1006f0000 -        0x100734fff +libmodplug.1.dylib (2.0.0 - compatibility 2.0.0) <F4F775E0-83E0-3E67-B9E1-45054FA47664> /Applications/SolarusDX.app/Contents/Frameworks/libmodplug.1.dylib
       0x1007d2000 -        0x100847ff7 +libfreetype.6.dylib (13.2.0 - compatibility 13.0.0) <69C05E8A-2E7A-3FBF-B667-187CD4BBDAD6> /usr/X11/lib/libfreetype.6.dylib
       0x10085e000 -        0x100864fef +org.xiph.ogg (1.1.4 - 1.1.4) <6C07B24B-D8EF-3C79-9CCE-B57854843324> /Applications/SolarusDX.app/Contents/Frameworks/Ogg.framework/Versions/A/Ogg
       0x100ddb000 -        0x100ddffff  com.apple.ATIRadeonX3000GA (7.14.5 - 7.1.4) <75AFB8D6-D125-3C4B-9BA2-0FDD63968987> /System/Library/Extensions/ATIRadeonX3000GA.plugin/Contents/MacOS/ATIRadeonX3000GA
       0x10459a000 -        0x10459efff  com.apple.audio.AudioIPCPlugIn (1.2.1 - 1.2.1) <46DBC886-A984-36F8-BAC6-CFBAED880258> /System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn.bundle/Contents/MacOS/AudioIPCPlugIn
       0x106d2d000 -        0x106d33fff  com.apple.audio.AppleHDAHALPlugIn (2.1.3 - 2.1.3f7) <25F21980-C114-3688-B6E7-FD83052D67B1> /System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHALPlugIn.bundle/Contents/MacOS/AppleHDAHALPlugIn
       0x108958000 -        0x108aa3ff7  com.apple.audio.units.Components (1.7.1 - 1.7.1) <2B7D5E78-5C1A-3246-B64F-24D9278CCEE5> /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio
    0x7fff67ae7000 -     0x7fff67b1bac7  dyld (195.5 - ???) <4A6E2B28-C7A2-3528-ADB7-4076B9836041> /usr/lib/dyld
    0x7fff8d09f000 -     0x7fff8d0b5ff7  com.apple.ImageCapture (7.0 - 7.0) <69E6E2E1-777E-332E-8BCF-4F0611517DD0> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture
    0x7fff8d2f6000 -     0x7fff8d38cff7  libvMisc.dylib (325.4.0 - compatibility 1.0.0) <642D8D54-F9F5-3FBB-A96C-EEFE94C6278B> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
    0x7fff8d38d000 -     0x7fff8d3c7fef  com.apple.DebugSymbols (2.1 - 85) <7E0E17D9-C8D4-3117-B36A-506929F6FF72> /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols
    0x7fff8d3f9000 -     0x7fff8d403ff7  liblaunch.dylib (392.18.0 - compatibility 1.0.0) <39EF04F2-7F0C-3435-B785-BF283727FFBD> /usr/lib/system/liblaunch.dylib
    0x7fff8d404000 -     0x7fff8d40fff7  com.apple.speech.recognition.framework (4.0.19 - 4.0.19) <7ADAAF5B-1D78-32F2-9FFF-D2E3FBB41C2B> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition
    0x7fff8d410000 -     0x7fff8d505fff  libiconv.2.dylib (7.0.0 - compatibility 7.0.0) <5C40E880-0706-378F-B864-3C2BD922D926> /usr/lib/libiconv.2.dylib
    0x7fff8d506000 -     0x7fff8d50afff  libdyld.dylib (195.5.0 - compatibility 1.0.0) <F1903B7A-D3FF-3390-909A-B24E09BAD1A5> /usr/lib/system/libdyld.dylib
    0x7fff8d50b000 -     0x7fff8d5aafff  com.apple.LaunchServices (480.21 - 480.21) <6BFADEA9-5BC1-3B53-A013-488EB7F1AB57> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
    0x7fff8d605000 -     0x7fff8d609fff  libCGXType.A.dylib (600.0.0 - compatibility 64.0.0) <5EEAD17D-006C-3855-8093-C7A4A97EE0D0> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGXType.A.dylib
    0x7fff8db9d000 -     0x7fff8dbb1ff7  com.apple.LangAnalysis (1.7.0 - 1.7.0) <04C31EF0-912A-3004-A08F-CEC27030E0B2> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis
    0x7fff8dbee000 -     0x7fff8dbefff7  libremovefile.dylib (21.0.0 - compatibility 1.0.0) <C6C49FB7-1892-32E4-86B5-25AD165131AA> /usr/lib/system/libremovefile.dylib
    0x7fff8de5c000 -     0x7fff8de5cfff  com.apple.vecLib (3.7 - vecLib 3.7) <9A58105C-B36E-35B5-812C-4ED693F2618F> /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib
    0x7fff8deba000 -     0x7fff8dee3fff  libJPEG.dylib (??? - ???) <64D079F9-256A-323B-A837-84628B172F21> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
    0x7fff8df16000 -     0x7fff8df56ff7  libcups.2.dylib (2.9.0 - compatibility 2.0.0) <B7173CA4-CE16-3BAB-8D83-185FCEFA15F5> /usr/lib/libcups.2.dylib
    0x7fff8df57000 -     0x7fff8df65fff  libdispatch.dylib (187.7.0 - compatibility 1.0.0) <712AAEAC-AD90-37F7-B71F-293FF8AE8723> /usr/lib/system/libdispatch.dylib
    0x7fff8df66000 -     0x7fff8e043fef  libsystem_c.dylib (763.12.0 - compatibility 1.0.0) <FF69F06E-0904-3C08-A5EF-536FAFFFDC22> /usr/lib/system/libsystem_c.dylib
    0x7fff8e044000 -     0x7fff8e044fff  com.apple.Cocoa (6.6 - ???) <021D4214-9C23-3CD8-AFB2-F331697A4508> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
    0x7fff8e047000 -     0x7fff8e180fef  com.apple.vImage (5.1 - 5.1) <EB634387-CD15-3246-AC28-5FB368ACCEA2> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
    0x7fff8e181000 -     0x7fff8e187fff  libmacho.dylib (800.0.0 - compatibility 1.0.0) <D86F63EC-D2BD-32E0-8955-08B5EAFAD2CC> /usr/lib/system/libmacho.dylib
    0x7fff8e188000 -     0x7fff8e1daff7  libGLU.dylib (??? - ???) <3C9153A0-8499-3DC0-AAA4-9FA6E488BE13> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
    0x7fff8e1db000 -     0x7fff8e1edff7  libbsm.0.dylib (??? - ???) <349BB16F-75FA-363F-8D98-7A9C3FA90A0D> /usr/lib/libbsm.0.dylib
    0x7fff8e47a000 -     0x7fff8e4cdfff  libFontRegistry.dylib (??? - ???) <57FBD85F-41A6-3DB9-B5F4-FCC6B260F1AD> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib
    0x7fff8e4ce000 -     0x7fff8e4e1ff7  libCRFSuite.dylib (??? - ???) <034D4DAA-63F0-35E4-BCEF-338DD7A453DD> /usr/lib/libCRFSuite.dylib
    0x7fff8e5c9000 -     0x7fff8e60afff  com.apple.QD (3.12 - ???) <4F3C5629-97C7-3E55-AF3C-ACC524929DA2> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD
    0x7fff8e60b000 -     0x7fff8e610fff  libcache.dylib (47.0.0 - compatibility 1.0.0) <B7757E2E-5A7D-362E-AB71-785FE79E1527> /usr/lib/system/libcache.dylib
    0x7fff8e7c6000 -     0x7fff8e7cbfff  libpam.2.dylib (3.0.0 - compatibility 3.0.0) <D952F17B-200A-3A23-B9B2-7C1F7AC19189> /usr/lib/libpam.2.dylib
    0x7fff8e840000 -     0x7fff8e924def  libobjc.A.dylib (228.0.0 - compatibility 1.0.0) <C5F2392D-B481-3A9D-91BE-3D039FFF4DEC> /usr/lib/libobjc.A.dylib
    0x7fff8e925000 -     0x7fff8e933fff  com.apple.NetAuth (1.0 - 3.0) <F384FFFD-70F6-3B1C-A886-F5B446E456E7> /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth
    0x7fff8e942000 -     0x7fff8e98dff7  com.apple.SystemConfiguration (1.11.1 - 1.11) <F832FE21-5509-37C6-B1F1-48928F31BE45> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
    0x7fff8e98e000 -     0x7fff8e997ff7  libsystem_notify.dylib (80.1.0 - compatibility 1.0.0) <A4D651E3-D1C6-3934-AD49-7A104FD14596> /usr/lib/system/libsystem_notify.dylib
    0x7fff8e998000 -     0x7fff8e999fff  libdnsinfo.dylib (395.6.0 - compatibility 1.0.0) <718A135F-6349-354A-85D5-430B128EFD57> /usr/lib/system/libdnsinfo.dylib
    0x7fff8e99a000 -     0x7fff8e99dfff  com.apple.help (1.3.2 - 42) <AB67588E-7227-3993-927F-C9E6DAC507FD> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help
    0x7fff8e9ad000 -     0x7fff8e9adfff  libkeymgr.dylib (23.0.0 - compatibility 1.0.0) <61EFED6A-A407-301E-B454-CD18314F0075> /usr/lib/system/libkeymgr.dylib
    0x7fff8e9c8000 -     0x7fff8eaa6fff  com.apple.ImageIO.framework (3.1.1 - 3.1.1) <13E549F8-5BD6-3BAE-8C33-1D0BD269C081> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO
    0x7fff8eaa7000 -     0x7fff8eb4bfef  com.apple.ink.framework (1.3.2 - 110) <F69DBD44-FEC8-3C14-8131-CC0245DBBD42> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink
    0x7fff8eb4c000 -     0x7fff8ec2dfff  com.apple.CoreServices.OSServices (478.29 - 478.29) <B487110E-C942-33A8-A494-3BDEDB88B1CD> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
    0x7fff8ec2e000 -     0x7fff8eca3ff7  libc++.1.dylib (19.0.0 - compatibility 1.0.0) <C0EFFF1B-0FEB-3F99-BE54-506B35B555A9> /usr/lib/libc++.1.dylib
    0x7fff8eca4000 -     0x7fff8ecc1fff  libPng.dylib (??? - ???) <3C70A94C-9442-3E11-AF51-C1B0EF81680E> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib
    0x7fff8ed17000 -     0x7fff8ed6bff7  com.apple.ScalableUserInterface (1.0 - 1) <1873D7BE-2272-31A1-8F85-F70C4D706B3B> /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/ScalableUserInterface.framework/Versions/A/ScalableUserInterface
    0x7fff8ed6c000 -     0x7fff8ed72fff  IOSurface (??? - ???) <06FA3FDD-E6D5-391F-B60D-E98B169DAB1B> /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface
    0x7fff8ed73000 -     0x7fff8ee0dff7  com.apple.SearchKit (1.4.0 - 1.4.0) <4E70C394-773E-3A4B-A93C-59A88ABA9509> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
    0x7fff8ee78000 -     0x7fff8ee79fff  libDiagnosticMessagesClient.dylib (??? - ???) <3DCF577B-F126-302B-BCE2-4DB9A95B8598> /usr/lib/libDiagnosticMessagesClient.dylib
    0x7fff8f2ad000 -     0x7fff8f2aefff  libsystem_sandbox.dylib (??? - ???) <8D14139B-B671-35F4-9E5A-023B4C523C38> /usr/lib/system/libsystem_sandbox.dylib
    0x7fff8f2af000 -     0x7fff8f2b5fff  libGFXShared.dylib (??? - ???) <343AE6C0-EB02-333C-8D35-DF6093B92758> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib
    0x7fff8f2b6000 -     0x7fff8f324fff  com.apple.CoreSymbolication (2.1 - 67) <194A355B-58C7-3B1E-A714-00F71ACCDB0A> /System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication
    0x7fff8f325000 -     0x7fff8f32afff  libcompiler_rt.dylib (6.0.0 - compatibility 1.0.0) <98ECD5F6-E85C-32A5-98CD-8911230CB66A> /usr/lib/system/libcompiler_rt.dylib
    0x7fff8f32b000 -     0x7fff8f330fff  com.apple.OpenDirectory (10.7 - 146) <91A87249-6A2F-3F89-A8DE-0E95C0B54A3A> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
    0x7fff8f331000 -     0x7fff8f348fff  com.apple.MultitouchSupport.framework (220.62.1 - 220.62.1) <F21C79C0-4B5A-3645-81A6-74F8EFA900CE> /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport
    0x7fff8f356000 -     0x7fff8f62eff7  com.apple.security (7.0 - 55010) <93713FF4-FE86-3B4C-8150-5FCC7F3320C8> /System/Library/Frameworks/Security.framework/Versions/A/Security
    0x7fff8f67d000 -     0x7fff8f851fff  com.apple.CoreFoundation (6.7.1 - 635.15) <FE4A86C2-3599-3CF8-AD1A-822F1FEA820F> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x7fff8f852000 -     0x7fff8f876ff7  com.apple.RemoteViewServices (1.2 - 39) <862849C8-84C1-32A1-B87E-B29E74778C9F> /System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices
    0x7fff8fb73000 -     0x7fff8fbaeff7  libsystem_info.dylib (??? - ???) <9C8C2DCB-96DB-3471-9DCE-ADCC26BE2DD4> /usr/lib/system/libsystem_info.dylib
    0x7fff8fbaf000 -     0x7fff8fbb6fff  libcopyfile.dylib (85.1.0 - compatibility 1.0.0) <172B1985-F24A-34E9-8D8B-A2403C9A0399> /usr/lib/system/libcopyfile.dylib
    0x7fff8fbb7000 -     0x7fff8fbbbff7  com.apple.CommonPanels (1.2.5 - 94) <0BB2C436-C9D5-380B-86B5-E355A7711259> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels
    0x7fff8fbbc000 -     0x7fff8fbc1fff  libGIF.dylib (??? - ???) <393E2DB5-9479-39A6-A75A-B5F20B852532> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib
    0x7fff900d0000 -     0x7fff90153fef  com.apple.Metadata (10.7.0 - 627.20) <E00156B0-663A-35EF-A307-A2CEB00F1845> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
    0x7fff9015e000 -     0x7fff9018bff7  com.apple.opencl (1.50.63 - 1.50.63) <DB335C5C-3ABD-38C8-B6A5-8436EE1484D3> /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL
    0x7fff9018c000 -     0x7fff901a2fff  libGL.dylib (??? - ???) <6A473BF9-4D35-34C6-9F8B-86B68091A9AF> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
    0x7fff901a3000 -     0x7fff90256fff  com.apple.CoreText (220.11.0 - ???) <4EA8E2DF-542D-38D5-ADB9-C0DAA73F898B> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreText.framework/Versions/A/CoreText
    0x7fff90257000 -     0x7fff902b7fff  libvDSP.dylib (325.4.0 - compatibility 1.0.0) <3A7521E6-5510-3FA7-AB65-79693A7A5839> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
    0x7fff902ba000 -     0x7fff9052dfff  com.apple.CoreImage (7.82 - 1.0.1) <282801B6-5D80-3E2C-88A4-00FE29906D5A> /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage
    0x7fff9053c000 -     0x7fff9054bff7  com.apple.opengl (1.7.5 - 1.7.5) <2945F1A6-910C-3596-9988-5701B04BD821> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
    0x7fff9054c000 -     0x7fff9056cfff  libsystem_kernel.dylib (1699.22.73 - compatibility 1.0.0) <69F2F501-72D8-3B3B-8357-F4418B3E1348> /usr/lib/system/libsystem_kernel.dylib
    0x7fff90a32000 -     0x7fff90a38ff7  libunwind.dylib (30.0.0 - compatibility 1.0.0) <1E9C6C8C-CBE8-3F4B-A5B5-E03E3AB53231> /usr/lib/system/libunwind.dylib
    0x7fff90a39000 -     0x7fff90a46fff  libCSync.A.dylib (600.0.0 - compatibility 64.0.0) <931F40EB-CA75-3A90-AC97-4DB8E210BC76> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCSync.A.dylib
    0x7fff90a47000 -     0x7fff90accff7  com.apple.Heimdal (2.1 - 2.0) <C92E327E-CB5F-3C9B-92B0-F1680095C8A3> /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal
    0x7fff90aff000 -     0x7fff90b02ff7  com.apple.securityhi (4.0 - 1) <B37B8946-BBD4-36C1-ABC6-18EDBC573F03> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI
    0x7fff90b07000 -     0x7fff90b23ff7  com.apple.GenerationalStorage (1.0 - 125) <31F60175-E38D-3C63-8D95-32CFE7062BCB> /System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage
    0x7fff90b24000 -     0x7fff90b25ff7  libsystem_blocks.dylib (53.0.0 - compatibility 1.0.0) <8BCA214A-8992-34B2-A8B9-B74DEACA1869> /usr/lib/system/libsystem_blocks.dylib
    0x7fff90bd5000 -     0x7fff90bd7ff7  com.apple.print.framework.Print (7.1 - 247.1) <8A4925A5-BAA3-373C-9B5D-03E0270C6B12> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print
    0x7fff90bd8000 -     0x7fff90cdaff7  libxml2.2.dylib (10.3.0 - compatibility 10.0.0) <D46F371D-6422-31B7-BCE0-D80713069E0E> /usr/lib/libxml2.2.dylib
    0x7fff90d07000 -     0x7fff90d24ff7  com.apple.openscripting (1.3.3 - ???) <A64205E6-D3C5-3E12-B1A0-72243151AF7D> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting
    0x7fff90d6a000 -     0x7fff9147d587  com.apple.CoreGraphics (1.600.0 - ???) <A9F2451E-6F60-350E-A6E5-539669B53074> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
    0x7fff9147e000 -     0x7fff91945fff  FaceCoreLight (1.4.7 - compatibility 1.0.0) <E9D2A69C-6E81-358C-A162-510969F91490> /System/Library/PrivateFrameworks/FaceCoreLight.framework/Versions/A/FaceCoreLight
    0x7fff919c5000 -     0x7fff91a04fff  com.apple.AE (527.7 - 527.7) <B82F7ABC-AC8B-3507-B029-969DD5CA813D> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
    0x7fff91a05000 -     0x7fff91a1cfff  com.apple.CFOpenDirectory (10.7 - 144) <9709423E-8484-3B26-AAE8-EF58D1B8FB3F> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
    0x7fff91a1d000 -     0x7fff91b22ff7  libFontParser.dylib (??? - ???) <B9A53808-C97E-3293-9C33-1EA9D4E83EC8> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib
    0x7fff91c28000 -     0x7fff91c28fff  com.apple.ApplicationServices (41 - 41) <03F3FA8F-8D2A-3AB6-A8E3-40B001116339> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices
    0x7fff920bd000 -     0x7fff920c4fff  com.apple.NetFS (4.0 - 4.0) <B9F41443-679A-31AD-B0EB-36557DAF782B> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
    0x7fff9213f000 -     0x7fff921a6fff  com.apple.Symbolication (1.2 - 87) <C8F38870-0C4E-3A7F-9B12-0E970DE92F24> /System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication
    0x7fff92883000 -     0x7fff92ba7fff  com.apple.HIToolbox (1.8 - ???) <A3BE7C59-52E6-3A7F-9B30-24B7DD3E95F2> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
    0x7fff92ba8000 -     0x7fff92babfff  libRadiance.dylib (??? - ???) <CD89D70D-F177-3BAE-8A26-644EA7D5E28E> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib
    0x7fff92e31000 -     0x7fff92e50fff  libresolv.9.dylib (46.0.0 - compatibility 1.0.0) <33263568-E6F3-359C-A4FA-66AD1300F7D4> /usr/lib/libresolv.9.dylib
    0x7fff93011000 -     0x7fff9302eff7  libxpc.dylib (77.17.0 - compatibility 1.0.0) <72A16104-2F23-3C22-B474-1953F06F9376> /usr/lib/system/libxpc.dylib
    0x7fff9302f000 -     0x7fff93033fff  libmathCommon.A.dylib (2026.0.0 - compatibility 1.0.0) <FF83AFF7-42B2-306E-90AF-D539C51A4542> /usr/lib/system/libmathCommon.A.dylib
    0x7fff93034000 -     0x7fff930afff7  com.apple.print.framework.PrintCore (7.1 - 366.1) <3F140DEB-9F87-3672-97CC-F983752581AC> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore
    0x7fff930b0000 -     0x7fff930d9fff  com.apple.CoreServicesInternal (113.8 - 113.8) <C1A3CF1B-BC45-3FC6-82B3-1511EBBA9D51> /System/Library/PrivateFrameworks/CoreServicesInternal.framework/Versions/A/CoreServicesInternal
    0x7fff930da000 -     0x7fff931f2ff7  com.apple.DesktopServices (1.6.1 - 1.6.1) <4418EAA6-7163-3A77-ABD3-F8289796C81A> /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv
    0x7fff931f3000 -     0x7fff932fffff  libcrypto.0.9.8.dylib (44.0.0 - compatibility 0.9.8) <3A8E1F89-5E26-3C8B-B538-81F5D61DBF8A> /usr/lib/libcrypto.0.9.8.dylib
    0x7fff9335f000 -     0x7fff93383fff  com.apple.Kerberos (1.0 - 1) <1F826BCE-DA8F-381D-9C4C-A36AA0EA1CB9> /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
    0x7fff93384000 -     0x7fff93408ff7  com.apple.ApplicationServices.ATS (317.5.0 - ???) <FE629F2D-6BC0-3A58-9844-D8B9A6808A00> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS
    0x7fff93409000 -     0x7fff93414ff7  libc++abi.dylib (14.0.0 - compatibility 1.0.0) <8FF3D766-D678-36F6-84AC-423C878E6D14> /usr/lib/libc++abi.dylib
    0x7fff9341c000 -     0x7fff93582fff  com.apple.CFNetwork (520.2.5 - 520.2.5) <406712D9-3F0C-3763-B4EB-868D01F1F042> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
    0x7fff93583000 -     0x7fff9358efff  com.apple.CommonAuth (2.1 - 2.0) <BFDD0A8D-4BEA-39EC-98B3-2E083D7B1ABD> /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth
    0x7fff9359f000 -     0x7fff935a0fff  libunc.dylib (24.0.0 - compatibility 1.0.0) <C67B3B14-866C-314F-87FF-8025BEC2CAAC> /usr/lib/system/libunc.dylib
    0x7fff935a1000 -     0x7fff935a3fff  libCVMSPluginSupport.dylib (??? - ???) <61D89F3C-C64D-3733-819F-8AAAE4E2E993> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib
    0x7fff935b7000 -     0x7fff936bafff  libsqlite3.dylib (9.6.0 - compatibility 9.0.0) <7F60B0FF-4946-3639-89AB-B540D318B249> /usr/lib/libsqlite3.dylib
    0x7fff93a52000 -     0x7fff93a60ff7  libkxld.dylib (??? - ???) <65BE345D-6618-3D1A-9E2B-255E629646AA> /usr/lib/system/libkxld.dylib
    0x7fff93dbe000 -     0x7fff93e20fff  com.apple.coreui (1.2.1 - 164.1) <F7972630-F696-3FC5-9FCF-A6E1C8771078> /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI
    0x7fff93e21000 -     0x7fff93e7cff7  com.apple.HIServices (1.10 - ???) <BAB8B422-7047-3D2D-8E0A-13FCF153E4E7> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices
    0x7fff93ece000 -     0x7fff93ed5ff7  com.apple.CommerceCore (1.0 - 17) <AA783B87-48D4-3CA6-8FF6-0316396022F4> /System/Library/PrivateFrameworks/CommerceKit.framework/Versions/A/Frameworks/CommerceCore.framework/Versions/A/CommerceCore
    0x7fff93ed7000 -     0x7fff93f4afff  libstdc++.6.dylib (52.0.0 - compatibility 7.0.0) <6BDD43E4-A4B1-379E-9ED5-8C713653DFF2> /usr/lib/libstdc++.6.dylib
    0x7fff93f4b000 -     0x7fff93fedff7  com.apple.securityfoundation (5.0 - 55005) <0D59908C-A61B-389E-AF37-741ACBBA6A94> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
    0x7fff94043000 -     0x7fff94470fff  libLAPACK.dylib (??? - ???) <4F2E1055-2207-340B-BB45-E4F16171EE0D> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
    0x7fff94793000 -     0x7fff949adfef  com.apple.CoreData (104 - 358.12) <33B1FA75-7970-3751-9DCC-FF809D3E1FA2> /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
    0x7fff949ba000 -     0x7fff949fdff7  libRIP.A.dylib (600.0.0 - compatibility 64.0.0) <2B1571E1-8E87-364E-BC36-C9C9B5D3EAC4> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib
    0x7fff94a44000 -     0x7fff94d5dff7  com.apple.Foundation (6.7.1 - 833.20) <D922F590-FDA6-3D89-A271-FD35E2290624> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
    0x7fff94d7c000 -     0x7fff94dacff7  com.apple.DictionaryServices (1.2.1 - 158.2) <3FC86118-7553-38F7-8916-B329D2E94476> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
    0x7fff94ddb000 -     0x7fff94e29fff  libauto.dylib (??? - ???) <D8AC8458-DDD0-3939-8B96-B6CED81613EF> /usr/lib/libauto.dylib
    0x7fff94e94000 -     0x7fff94e9afff  com.apple.DiskArbitration (2.4.1 - 2.4.1) <CEA34337-63DE-302E-81AA-10D717E1F699> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
    0x7fff94e9b000 -     0x7fff94ec8fe7  libSystem.B.dylib (159.1.0 - compatibility 1.0.0) <095FDD3C-3961-3865-A59B-A5B0A4B8B923> /usr/lib/libSystem.B.dylib
    0x7fff94ec9000 -     0x7fff94ec9fff  com.apple.audio.units.AudioUnit (1.7.1 - 1.7.1) <04C10813-CCE5-3333-8C72-E8E35E417B3B> /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
    0x7fff94fe9000 -     0x7fff95040fff  libTIFF.dylib (??? - ???) <FF0D9A24-6956-3F03-81EA-3EEAD22C9DB8> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
    0x7fff95041000 -     0x7fff95080ff7  libGLImage.dylib (??? - ???) <2D1D8488-EC5F-3229-B983-CFDE0BB37586> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib
    0x7fff950fe000 -     0x7fff950fefff  com.apple.Accelerate (1.7 - Accelerate 1.7) <82DDF6F5-FBC3-323D-B71D-CF7ABC5CF568> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
    0x7fff95153000 -     0x7fff95165ff7  libz.1.dylib (1.2.5 - compatibility 1.0.0) <30CBEF15-4978-3DED-8629-7109880A19D4> /usr/lib/libz.1.dylib
    0x7fff95263000 -     0x7fff95465fff  libicucore.A.dylib (46.1.0 - compatibility 1.0.0) <38CD6ED3-C8E4-3CCD-89AC-9C3198803101> /usr/lib/libicucore.A.dylib
    0x7fff95466000 -     0x7fff95466fff  com.apple.Accelerate.vecLib (3.7 - vecLib 3.7) <C06A140F-6114-3B8B-B080-E509303145B8> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
    0x7fff95541000 -     0x7fff955abfff  com.apple.framework.IOKit (2.0 - ???) <87D55F1D-CDB5-3D13-A5F9-98EA4E22F8EE> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
    0x7fff955e2000 -     0x7fff955e3fff  liblangid.dylib (??? - ???) <CACBE3C3-2F7B-3EED-B50E-EDB73F473B77> /usr/lib/liblangid.dylib
    0x7fff955e4000 -     0x7fff9560bfff  com.apple.PerformanceAnalysis (1.10 - 10) <2A058167-292E-3C3A-B1F8-49813336E068> /System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis
    0x7fff9560c000 -     0x7fff9560ffff  libCoreVMClient.dylib (??? - ???) <E034C772-4263-3F48-B083-25A758DD6228> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib
    0x7fff95610000 -     0x7fff95610fff  com.apple.Carbon (153 - 153) <895C2BF2-1666-3A59-A669-311B1F4F368B> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
    0x7fff9564b000 -     0x7fff9564bfff  com.apple.CoreServices (53 - 53) <043C8026-8EDD-3241-B090-F589E24062EF> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
    0x7fff9564c000 -     0x7fff95c30fff  libBLAS.dylib (??? - ???) <C34F6D88-187F-33DC-8A68-C0C9D1FA36DF> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
    0x7fff95e86000 -     0x7fff95f4dff7  com.apple.ColorSync (4.7.0 - 4.7.0) <F325A9D7-7203-36B7-8C1C-B6A4D5CC73A8> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync
    0x7fff95f4e000 -     0x7fff96b4fff7  com.apple.AppKit (6.7.2 - 1138.23) <5CD2C850-4F52-3BA2-BA11-3107DFD2D23C> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
    0x7fff96b50000 -     0x7fff96b76ff7  com.apple.framework.familycontrols (3.0 - 300) <41A6DFC2-EAF5-390A-83A1-C8832528705C> /System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/FamilyControls
    0x7fff96b77000 -     0x7fff96e93ff7  com.apple.CoreServices.CarbonCore (960.18 - 960.18) <6020C3FB-6125-3EAE-A55D-1E77E38BEDEA> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
    0x7fff977dd000 -     0x7fff9797cfff  com.apple.QuartzCore (1.7 - 270.0) <E8FC9AA4-A5CB-384B-AD29-7190A1387D3E> /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
    0x7fff97992000 -     0x7fff979c5ff7  com.apple.GSS (2.1 - 2.0) <9A2C9736-DA10-367A-B376-2C7A584E6C7A> /System/Library/Frameworks/GSS.framework/Versions/A/GSS
    0x7fff97c84000 -     0x7fff97c8cfff  libsystem_dnssd.dylib (??? - ???) <7749128E-D0C5-3832-861C-BC9913F774FA> /usr/lib/system/libsystem_dnssd.dylib
    0x7fff97e31000 -     0x7fff97e73ff7  libcommonCrypto.dylib (55010.0.0 - compatibility 1.0.0) <A5B9778E-11C3-3F61-B740-1F2114E967FB> /usr/lib/system/libcommonCrypto.dylib
    0x7fff97fec000 -     0x7fff9805cfff  com.apple.datadetectorscore (3.0 - 179.4) <2A822A13-94B3-3A43-8724-98FDF698BB12> /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore
    0x7fff9805d000 -     0x7fff98072fff  com.apple.speech.synthesis.framework (4.0.74 - 4.0.74) <C061ECBB-7061-3A43-8A18-90633F943295> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis
    0x7fff98800000 -     0x7fff98802fff  com.apple.TrustEvaluationAgent (2.0 - 1) <1F31CAFF-C1C6-33D3-94E9-11B721761DDF> /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent
    0x7fff9881c000 -     0x7fff98844ff7  com.apple.CoreVideo (1.7 - 70.1) <98F917B2-FB53-3EA3-B548-7E97B38309A7> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
    0x7fff98b00000 -     0x7fff98b2bff7  libxslt.1.dylib (3.24.0 - compatibility 3.0.0) <8051A3FC-7385-3EA9-9634-78FC616C3E94> /usr/lib/libxslt.1.dylib
    0x7fff98b2c000 -     0x7fff98b94ff7  com.apple.audio.CoreAudio (4.0.1 - 4.0.1) <7966E3BE-376B-371A-A21D-9BD763C0BAE7> /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
    0x7fff98cda000 -     0x7fff98e33fff  com.apple.audio.toolbox.AudioToolbox (1.7.1 - 1.7.1) <4877267E-F736-3019-85D3-40A32A042A80> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
    0x7fff98e34000 -     0x7fff98f41fff  libJP2.dylib (??? - ???) <6052C973-9354-35CB-AAB9-31D00D8786F9> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib
    0x7fff98f42000 -     0x7fff98f44fff  libquarantine.dylib (36.0.0 - compatibility 1.0.0) <4C3BFBC7-E592-3939-B376-1C2E2D7C5389> /usr/lib/system/libquarantine.dylib
    0x7fff98f45000 -     0x7fff98f4aff7  libsystem_network.dylib (??? - ???) <5DE7024E-1D2D-34A2-80F4-08326331A75B> /usr/lib/system/libsystem_network.dylib

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 1
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 596
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=147.3M resident=120.1M(82%) swapped_out_or_unallocated=27.2M(18%)
Writable regions: Total=144.1M written=13.6M(9%) resident=15.9M(11%) swapped_out=0K(0%) unallocated=128.2M(89%)

REGION TYPE                      VIRTUAL
===========                      =======
ATS (font support)                 31.8M
ATS (font support) (reserved)         8K        reserved VM address space (unallocated)
CG backing stores                   224K
CG shared images                   1224K
CoreGraphics                         16K
CoreServices                       6216K
IOKit                                12K
MALLOC                             82.1M
MALLOC guard page                    48K
Memory tag=240                        4K
Memory tag=242                       12K
Memory tag=249                      156K
STACK GUARD                        56.0M
Stack                              11.6M
VM_ALLOCATE                        16.1M
__CI_BITMAP                          80K
__DATA                             12.9M
__IMAGE                            1256K
__LINKEDIT                         49.3M
__TEXT                             98.0M
__UNICODE                           544K
mapped file                        31.1M
shared memory                       308K
===========                      =======
TOTAL                             398.8M
TOTAL, minus reserved VM space    398.8M

Model: MacBookPro8,3, BootROM MBP81.0047.B24, 4 processors, Intel Core i7, 2.2 GHz, 4 GB, SMC 1.70f5
Graphics: AMD Radeon HD 6750M, AMD Radeon HD 6750M, PCIe, 1024 MB
Graphics: Intel HD Graphics 3000, Intel HD Graphics 3000, Built-In, 384 MB
Memory Module: BANK 0/DIMM0, 2 GB, DDR3, 1333 MHz, 0x80CE, 0x4D34373142353737334448302D4348392020
Memory Module: BANK 1/DIMM0, 2 GB, DDR3, 1333 MHz, 0x80CE, 0x4D34373142353737334448302D4348392020
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0xD6), Broadcom BCM43xx 1.0 (5.100.98.75.18)
Bluetooth: Version 4.0.1f4, 2 service, 11 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en1
Serial ATA Device: APPLE SSD TS128C, 121,33 GB
Serial ATA Device: MATSHITADVD-R   UJ-898
USB Device: FaceTime HD Camera (Built-in), apple_vendor_id, 0x8509, 0xfa200000 / 3
USB Device: hub_device, 0x0424  (SMSC), 0x2514, 0xfa100000 / 2
USB Device: BRCM2070 Hub, 0x0a5c  (Broadcom Corp.), 0x4500, 0xfa110000 / 5
USB Device: Bluetooth USB Host Controller, apple_vendor_id, 0x821a, 0xfa113000 / 7
USB Device: Apple Internal Keyboard / Trackpad, apple_vendor_id, 0x0253, 0xfa120000 / 4
USB Device: hub_device, 0x0424  (SMSC), 0x2514, 0xfd100000 / 2
USB Device: Apple Optical USB Mouse, apple_vendor_id, 0x0304, 0xfd130000 / 4
USB Device: IR Receiver, apple_vendor_id, 0x8242, 0xfd110000 / 3
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Pas de soucis, merci a vous ! ^^

Il y a effectivement des problèmes avec les options d'affichage.

Chez moi toutes les configurations fullscreen ne s'affichent pas correctement, il y a soit les couleurs qui reviennent en big endian, soit l'affichage est étiré dans la longueur uniquement, soit il n'affiche rien du tout, soit pas de changement par rapport au fenêtré ... pas de crash chez moi par contre ...
Tous les modes fenêtrés passent tous bien par contre.

Je n'ai rien dit car je suppose qu'encore une fois c'est un soucis avec la SDL, je ne pense pas que vous vous soyez amusé à recoder un setVideoMode() ^^

Je regarderais à l'occasion.

J'ai eu sa réponse. C'est bien lié au plein écran.
Salut,

Merci pour votre aide. J'ai pu effectivement débloquer le jeu et pouvoir jouer.

Je ne suis pas sûr que le crash soit en relation avec le son cependant. Le son dans le jeu fonctionne très bien, et il y a clairement une relation entre le crash et le mode d'affichage vidéo du jeu. Peut être qu'il y a un effet de bord avec le son (je ne connais pas le code du jeu après tout  ).

Si on édite le fichier config.ini, en changeant le paramètre video_mode, j'ai le comportement suivant:

video_mode = 0
Le jeu se lance en mode fenêtré, 640x480, normal. Aucun problème.

video_mode = 1
Le jeu se lance en mode fenêtré, 640x480, lissé. Aucun problème.

video_mode = 2
Le jeu se lance en mode fenêtré, 320x240, normal. Aucun problème.

Tous les modes vidéo >= 3 provoquent un crash au lancement. L'écran passe au noir pendant une seconde, comme si il tentait de changer de résolution et de passer en plein écran, mais cela échoue. Le comportement est identique en faisant défiler les modes vidéo dans le menu des options.

J'espère vous avoir aidé un petit peu. Merci pour votre réponse

Sonic Hachelle-Bee

Peut-être qu'il faudrait désactiver les modes plein écran sur Mac OS X, en attendant de trouver une solution.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Bon ben pour MC on refera les parties de render du moteur en OpenGL pur, au moins on se fera pas chier :o

Dites moi ma sauvegarde zsdx je dois la mettre ou sur mac ?

Quel que soit le système, les sauvegardes sont dans <répertoire_personnel>/.solarus/zsdx/
Mais la sauvegarde est un fichier binaire et je ne sais pas si c'est compatible entre PC et Mac.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

18 Décembre 2011 à 01:23 #24 Dernière édition: 18 Décembre 2011 à 04:31 par vlag67
http://www.ultimaaiera.com/blog/apples-os-x-lion-10-7-breaks-fullscreen-for-sdl-based-games/
http://lists.libsdl.org/pipermail/commits-libsdl.org/2011-August/004205.html

Effectivement et vu le nombre de billets sur le sujet, SDL et le fullscreen sur OSX c'est vraiment pas au point...
"Il faut tout racheter !" comme dirait l'autre ^^

Au meilleur des cas et vu le comportement du bug, je peux essayer de creuser pour 10.6, mais rien ne garantit que ca fonctionnera sur la longueur, ni au niveau retrocompatibilité.
Pour info j'obtiens un résultat correct en bidouillant blit_stretched() et blit_scale2x() de VideoManager mais bon c'est juste infaisable de maintenir un code basé sur un bug ^^
Le plus étrange est que le fullscreen centré passe bien chez moi.

Quelqu'un peux tester sur Lion pour voir si je laisse ce mode fullscreen ou si je les enlève tous ?


Edit : En attendant voila le package sans les modes fullscreen http://dl.dropbox.com/u/31755496/SolarusDX.zip

Le plus drôle c'est qu'apparemment SDL 1.3 résout le problème, et n'oblige pas à lier un SDLMain.m avec le projet ^^

Citation de: Christopho le 17 Décembre 2011 à 23:16
Quel que soit le système, les sauvegardes sont dans <répertoire_personnel>/.solarus/zsdx/
Mais la sauvegarde est un fichier binaire et je ne sais pas si c'est compatible entre PC et Mac.

Je confirme, sur mac ça sauve bien dans ~/.solarus/zsdx

A priori les fichiers sont compatibles, y'a pas de raison :)

21 Décembre 2011 à 03:38 #26 Dernière édition: 21 Décembre 2011 à 03:47 par vlag67
Ah je viens de voir qu'il a eu une release 1.1 (Edit: et 1.2 pendant que je postais ^^)
Voila le port Mac ==> http://dl.dropbox.com/u/31755496/SolarusDX1.2.zip

Au passage, je viens de voir qu'en mettant l'environnement X11 avec le hack du putenv(), les bugs liés à SDL disparaissent (expliciter le masque de couleur little endian + fullscreen foireux, meme s'il n'est pas étiré).
Pour la suite et en attendant un debug, vous préférez passer par Quartz et rester "propre" ou plutôt passer par X11 et avoir un plein écran qui ne crash pas ?

Dernière chose : maintenant que le gros des bugs critiques ont été corrigés, on peut y aller avec la liste des rapports de bugs mineurs/graphiques/suggestions d'améliorations ? :)

Je préfère un plein écran qui ne crash pas ^^
Pour les bugs mineurs et suggestions, c'était déjà possible avant :) Tu peux donc les poster dans le forum public de bugs.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Voila avec l'environnement X11.
http://dl.dropbox.com/u/31755496/SolarusDX1.2_X11.zip

Chez moi le fullscreen n'est pas étiré (donc 640*480 avec des bandes noires) mais n'a pas de comportement étrange comme avec Quartz, donc il y a des chances que le plein écran passe sur tous les Mac.

Avant de mettre en ligne, vérifiez quand meme (ceux qui ont des Mac) parce qu'un fullscreen qui a le meme affichage que son équivalent fenetré n'est surement pas bien utile, autant l'enlever complètement en attendant. Surtout que pour le prix a payer, X11 sur Mac c'est assez lourd ...

Je suis sur une connexion 3G, je peux rien tester avant début de semaine prochaine

Je vais pouvoir tester le jeu sur mon nouveau macbook Air ca va poutrer :D

20 Janvier 2012 à 03:28 #31 Dernière édition: 20 Janvier 2012 à 03:29 par vlag67
Bon.

Je me suis dit que la prerelease SDL 1.2.15 ( http://forums.libsdl.org/viewtopic.php?t=7872&sid=28ae0bd9fc0112fa5c1af51060c89d68 ) serait le bon moment pour tester si les soucis de fullscreen étaient réglé.
Effectivement, a condition de modifier, au début de VideoManager::set_video_mode(), int flags = SDL_SWSURFACE; sous peine de crash sur tous les mode plein écran, ca marche et c'est quand meme nettement mieux en grand :)

Les modes étirés passent presque bien, reste juste les couleurs qui repassent bizarrement en little endian.

En attendant de bricoler une solution, c'est de l'ordre de l'acceptable selon vous de sacrifier la carte graphique en attendant la release stable ?
D'autant que pour le fullscreen étiré on accède aux pixels a chaque draw(), ce qui n'a plutôt rien à voir avec le travail de la carte graphique donc il n'y aurait pas de perte de performance dans la majorité des cas, et aucune visible a priori.


Si SW_SURFACE suffit à réparer le plein écran, je suis pour (dans un #ifdef bien sûr). Mais j'ai pas compris ton post, ça marche ou ça marche pas avec les couleurs ?
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Ca marche, je prepare ca :)

En fait sur les 4 premiers options de plein écrans (donc sans les 2 centrés), les couleurs sont faussés, je dois enlever le code qui explicite le masque little endian. Cela dit si je fais ca, c'est sur les modes fenêtrés et les deux fullscreen centrés que les couleurs sont faussées.

20 Janvier 2012 à 17:40 #34 Dernière édition: 20 Janvier 2012 à 17:42 par Christopho
EDIT : en fait rien, j'ai lu trop vite.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

22 Janvier 2012 à 00:53 #35 Dernière édition: 22 Janvier 2012 à 03:01 par vlag67
Bon après test avec la nouvelle release et les maj externes, voila les conclusions.

* Le code spécifique à l'endianess peut gicler. Il y a encore quelques soucis quand on utilise le GPU (soucis qui n'apparaissent que sur solarus, pas sur les code minimaux SDL), mais les couleurs sont les bonnes sur l'utilisation processeur.
Remarque je suis sur un proco Intel, pour être sur il faudrait vérifier avec un Mac 10.5 PPC (puisque ce sont les derniers a en avoir), ou une Unix-like PPC.
Je me pencherais sur le soucis de la carte graphique à l'occasion pour un éventuel bug report du coté SDL.

* Bizarrement, et malgré le bug fix du chargement png 8bpp sur SDL_image, le code spécifique au support des png 16 et 32 bpp dans la gestion des collisions doit rester, sous peine de crash.

* Le soucis de couleur en plein écran est provoqué par les fonctions VideoManager::blit_stretched() et VideoManager::blit_scale2x().
Je ne sais pas pourquoi, mais en utilisant un buffer 640x480 et en blittant "normalement" le buffer sur le SDL_surface* à afficher, plus de soucis d'endianess nulle part...
Allez comprendre :)
Ne connaissant pas SDL en profondeur, niveaux optimisation, c'est acceptable de blitter l'image finale à chaque frame?

void VideoManager::blit_stretched(Surface* src_surface, Surface* dst_surface) {
 SDL_Surface *src_internal_surface = src_surface->get_internal_surface();
 SDL_Surface *dst_internal_surface = dst_surface->get_internal_surface();
   
 SDL_Surface* bufferImg = SDL_CreateRGBSurface(SDL_SWSURFACE,dst_internal_surface->w,dst_internal_surface->h,32,0,0,0,0);
   
 SDL_LockSurface(src_internal_surface);
 SDL_LockSurface(bufferImg);

 uint32_t* src = (uint32_t*) src_internal_surface->pixels;
 uint32_t* dst = (uint32_t*) bufferImg->pixels;

 int p = offset;
 for (int i = 0; i < 240; i++) {

   for (int j = 0; j < 320; j++) {
     dst[p] = dst[p + 1] = dst[p + width] = dst[p + width + 1] = *src;
     p += 2;
     src++;
   }

   p += end_row_increment;
 }

 SDL_UnlockSurface(bufferImg);
 SDL_UnlockSurface(src_internal_surface);
   
 SDL_BlitSurface(bufferImg,NULL,dst_internal_surface,NULL);
 SDL_FreeSurface(bufferImg);
}


* Prions pour que les bugs incompréhensibles et autres crash sur Mac fussent liés à SDL et soient corrigés dans la nouvelle release :)

23 Janvier 2012 à 22:24 #36 Dernière édition: 23 Janvier 2012 à 22:29 par vlag67
http://dl.dropbox.com/u/31755496/SolarusDXpre1.4.zip

S'il y a des motivés pour tester sur Lion :)

Aucune fenêtre n'apparaît, rien ne se lance quand je double-clique dessus.

Et lorsque je lance depuis les commandes:
dyld: Library not loaded: @rpath/SDL_image.framework/Versions/A/SDL_image
  Referenced from: /Applications/SolarusDX.app/Contents/MacOS/./../Resources/solarus
  Reason: image not found

lelinuxien, le mec le plus pratique au Monde parce qu'il a sous la main tous les OS possibles et imaginables x)

Hum ok, donc contrairement à ce que je pensais, @rpath ne va pas chercher les frameworks dans l'application bundle ...
Tant pis on va revenir au bon vieux @executable_path/../Framework/ :)

Par curiosité, tu as bien testé avec Lion ?
Parce que la nouvelle release SDL n'est compatible (nativement) que 10.5 et + Intel.

http://dl.dropbox.com/u/31755496/SolarusDXpre1.4.zip
J'ai juste modifié les @rpath sur le binaire principal, j'ai laissé les frameworks tels qu'ils étaient, tu peux retester ?
Merci :)

Idem:
dyld: Library not loaded: @executable_path/../SDL_image.framework/Versions/A/SDL_image
  Referenced from: /Applications/SolarusDX.app/Contents/MacOS/./../Resources/solarus
  Reason: image not found

Je teste bel et bien sous Lion 10.7.2.

Pour ce qui est de Tiger, les nouvelles versions des librairies ne sont pas compatibles (Leopard ou supérieur requis). J'ai essayé de compiler les frameworks SDL depuis le code source sous Tiger mais je n'y suis pas arrivé (le projet Xcode n'aime pas Xcode 2.5).

24 Janvier 2012 à 00:09 #41 Dernière édition: 24 Janvier 2012 à 00:11 par vlag67
Effectivement si j'oublie une partie du chemin, ca risque pas de marcher ^^
Tu peux ressayer : http://dl.dropbox.com/u/31755496/SolarusDXpre1.4.zip

Pour Tiger, le changelog SDL indique qu'il n'y aurait apparemment qu'a changer la cible pour compiler sur PPC. Le support est maintenu mais désactivé nativement.
Du coup il ne reste plus qu'a trouver une image de XCode 3 :)

Ça ne fonctionne toujours pas.


Sinon, il ne faut pas confondre support 10.4 et support PPC. L'architecture PPC est supportée jusqu'à MacOS X 10.5. De mon côté, j'effectue mes tests sous une version 10.4 Intel. Pour résumer, 10.4 et 10.5 fonctionnent en Universal Binaries (applications à la fois compatibles PPC et i386). 10.6 délaisse l'architecture PPC mais gère en natif les les applications Intel 64 bits (le support Intel 64 bits étant introduit avec MacOS X 10.5).

Plus depuis la dernière mise a jour. SDL fourni encore un framework universel compatible 10.4 et +, mais plus SDL_image et SDL_ttf. http://www.libsdl.org/download-1.2.php

Mais je me suis effectivement mal exprimé dans mon précédent message. Je voulais dire que si une version Tiger voit le jour, ce sera forcement basé sur les librairies universelles et donc avec support du PPC.

Toujours le meme message d'erreur sinon ? Le chemin devrais être bon pourtant.
Je vais encore enlever le @rpath des framework SDL pour voir si ca passe mieux

Exactement le même message. ;)


Sinon, oui, sous Tiger SDL-image et SDL-ttf ne sont plus disponibles. Et il me semble que les versions précédentes posent des problèmes de compatibilité avec la nouvelle version SDL 1.2.15.

24 Janvier 2012 à 00:39 #45 Dernière édition: 24 Janvier 2012 à 00:44 par vlag67
Ca marche, tu peux encore essayer cette version http://dl.dropbox.com/u/31755496/SolarusDXpre1.4.zip ?

A présent, c'est au niveau de PhysFS que ça pose problème:
dyld: Library not loaded: @executable_path/../Frameworks/PhysFS.framework/Versions/A/PhysFS
 Referenced from: /Applications/SolarusDX.app/Contents/Resources/./solarus
 Reason: image not found

Ça progresse ! Courage les gars !
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

Ah je suis synchro aujourd'hui.

Effectivement j'ai recompilé physFS récemment suite a un mail que j'ai reçu.
Cette fois ca devrais aller ^^
Toujours la meme adresse ==> http://dl.dropbox.com/u/31755496/SolarusDXpre1.4.zip

Le jeu se lance désormais en plein écran sans planter.  ^_^