Premiers essais SDL
Philippe49
Membre
Après récupération du SDLFramework, et de l'hôte Cocoa devel-lite, j'ai réalisé la compilation d'un essai de la bibliothèque. Cela peut se faire en ligne de commande ainsi :
gcc -I/Library/Frameworks/SDL.framework/Headers essaiSdl.c SDLMain.m -framework SDL -framework Cocoa -o pgm
Ma question :
Le SDLMain.m crée une application Cocoa avec fenêtre qui reçoit les instructions graphiques de essaiSDL.c
Mais comment est créé ce lien entre ces deux exécutables. J'ai du mal à le percevoir dans le code SDLMain ?
Le fait de les compiler sur la même ligne de commande ?
gcc -I/Library/Frameworks/SDL.framework/Headers essaiSdl.c SDLMain.m -framework SDL -framework Cocoa -o pgm
Ma question :
Le SDLMain.m crée une application Cocoa avec fenêtre qui reçoit les instructions graphiques de essaiSDL.c
Mais comment est créé ce lien entre ces deux exécutables. J'ai du mal à le percevoir dans le code SDLMain ?
Le fait de les compiler sur la même ligne de commande ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
SDLMain.m crée une appli Cocoa avec menu, et boucle d'événements, c'est assez clair.
mais SDLMain.m et mon essaiSdl.c définissent tous les deux un main() : qui fait quoi ? Est-ce un système de process père/fils qui s'installe comme le fait un shell ? [size=8pt](1)[/size]
Je crois que là ma culture informatique a besoin d'être complétée !
[size=8pt](1)[/size]
Dans SDLMain, on trouve
extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn);
extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5);
extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn);
main() de SDLMain appelle CustomApplicationMain()
#define main SDL_main