Comment utiliser la librairie SDL dans son programme en langage D?
Ca m'a pris des efforts et de la sueur donc je sauvegarde les etapes, de l'installation des outils jusqu'a la compilation d'un exemple, pour des futures references.
Pour ce projet, j'utilise Debian 6 sur un eeepc 901.
A voir:
- le langage D : http://dlang.org/download.html
- la librairie SDL : http://www.libsdl.org/
- le 'package' Derelict : http://dblog.aldacron.net/derelict-help/using-derelict/
Les etapes:
1 - creer le repertoire ou on range tout (dans mon cas: /home/user/tetorea/DerelictOrg):
cd
mkdir DerelictOrg
cd DerelictOrg
2 - installer le compilateur D
voir la page http://dlang.org/download.html pour les details
Dans mon cas, Debian sur eeepc 901, il a suffit de telecharger et lancer le fichier dmd_2.066.1-0_i386.deb avec:
sudo dpkg -i dmd_2.066.1-0_i386.deb
3 - installer SDL2
telecharger le code source : http://www.libsdl.org/download-2.0.php
dans mon cas : http://www.libsdl.org/release/SDL2-2.0.3.zip
decompresser dans le repertoire DerelictOrg
compiler et installer
cd SDL2-2.0.3
./configure
make
sudo make install
4 - installer dub
on en a besoin pour compiler les packages suivants!
j'ai recupere sur cette page http://code.dlang.org/download, le fichier :
http://code.dlang.org/files/dub-0.9.22-linux-x86.tar.gz
decompresse et copie dans le repertoire /usr/bin
5 - installer DerelictSDL2
DerelictSDL2 fait partie de la repository DerelictOrg sur Github. On a egalement besoin de DerelictUtil pour installer DerelictSDL2!
Pour installer tout ca, on a besoin de recuperer les sources en passant par git (pour installer git: sudo apt-get install git).
Dans le repertoire DerelictOrg:
git clone https://github.com/DerelictOrg/DerelictUtil.git
git clone https://github.com/DerelictOrg/DerelictSDL2.git
cd DerelictUtil
dub build
cd ../DerelictSDL2
dub build
6 - on peut programmer en D avec SDL2 !
Copier le texte suivant dans un fichier test.d, dans le repertoire DerelictOrg :
--------------------------------------
import std.stdio;
import std.conv;
import derelict.sdl2.sdl;
void main()
{
DerelictSDL2.load();
if( SDL_Init( SDL_INIT_VIDEO ) < 0 ) {
writeln( "SDL could not initialize! SDL_Error: "~ to!string( SDL_GetError() ) );
return;
}
SDL_Window *sdlWindow;
SDL_Renderer *sdlRenderer;
SDL_CreateWindowAndRenderer( 0, 0, SDL_WINDOW_FULLSCREEN_DESKTOP, &sdlWindow, &sdlRenderer );
SDL_SetRenderDrawColor( sdlRenderer, 0, 100, 0, 255 );
SDL_RenderClear( sdlRenderer );
SDL_RenderPresent( sdlRenderer );
SDL_Delay( 2000 );
SDL_DestroyWindow( sdlWindow );
SDL_Quit();
}
--------------------------------------
Ca se contente d'afficher un ecran vert pendant 2 secondes avant de quitter.
Copier le texte suivant dans un fichier Makefile, dans le repertoire DerelictOrg :
--------------------------------------
test: test.d
dmd test.d -IDerelictSDL2/source/ -IDerelictUtil/source/ -LDerelictSDL2/lib/libDerelictSDL2.a -LDerelictUtil/lib/libDerelictUtil.a -L-ldl
--------------------------------------
et on tape:
make
./test
Il n'y a plus qu'a jouer avec SDL et D...
mardi 18 novembre 2014
Inscription à :
Publier les commentaires (Atom)
Aucun commentaire:
Enregistrer un commentaire