30 mars 2006

Photos en vrac


Soyons, les bords du Rhône (07)


Valence, près du parc Jouvet (26)

Libellés : , , ,


22 mars 2006

Windows: C++ avec Eclipse, Cygwin et SDL


1. Pourquoi


1.1. SDL
La librairie SDL est destinée au développement d'applications multimédia (en particulier les jeux) ; elle supporte plusieurs systèmes d'exploitation, par exemple Windows et Linux.

1.2. Eclipse
Eclipse est un environnement de développement très largement utilisé, sur lequel est basé IBM Websphere. Il est extensible et possède un plugin nommé CDT permettant de développer en C++.

1.3. Cygwin
Cygwin est une couche d'émulation Unix pour Windows. La plupart des outils GNU, dont le compilateur C++, sont disponibles dans cet environnement.

2. Comment

2.1. Installer Cygwin
Cygwin s'installe très simplement à partir du réseau via un petit exécutable disponible ici. Mieux vaut ne pas utiliser d'espaces dans le répertoire d'installation (par exemple, c:\cygwin). Lors du choix des paquets à installer, il faut sélectionner dans la catégorie Devel gdb, gcc-g++ (ou gcc-mingw-g++), et make. Une fois installé, il est possible de lancer la ligne de commande à partir de l'icône Cygwin Bash Shell.

2.2. Compiler et installer SDL
Les sources de la librairie SDL se téléchargent à partir d'ici (la dernière version à ce jour étant la 1.2.9) ; placez le fichier récupéré (par exemple, SDL-1.2.9.tar.gz) dans un répertoire facilement accessible via cygwin (comme c:\cygwin\usr\src).

Ensuite, placez-vous à partir de la ligne de commande cygwin dans ce répertoire :
cd /usr/src


Décompressez le fichier récupéré:
tar xvzf SDL-1.2.9.tar.gz

Placez-vous dans le répertoire ainsi créé:
cd SDL-1.2.9

Compilez et installez la librairie:
./configure --prefix=/usr/local && make && make install

Et voilà.

Il est nécessaire d'ajouter les chemins des binaires de Cygwin dans les variables d'environnement de Windows. Pour ce faire, allez dans le panneau de configuration de Windows, choisissez Système, Avancé, Variables d'environnement, puis la variable Path. Ajoutez-y
;c:\cygwin\bin;c:\cygwin\usr\local\bin

par exemple, selon le répertoire d'installation de Cygwin.

2.3. Installer le Sun JRE
Eclipse nécessite une machine virtuelle Java pour fonctionner. Si vous n'en avez pas encore installé, il est possible de le faire à partir du site de Sun (la dernière version à ce jour étant la 1.5).

2.4. Installer Eclipse
On peut trouver Eclipse sur le site eclipse.org. Téléchargez Eclipse SDK (la dernière version à ce jour est la 3.2.1). Décompressez-le directement là où vous souhaitez le voir installé (par exemple, dans c:\Program Files\). Il suffira de supprimer le répertoire eclipse créé par la décompression de l'archive pour le désinstaller.
Lancez l'application eclipse.exe à partir de ce dernier.

2.5. Installer le plug-in CDT
Certaines des extensions d'Eclipse sont directement installables à partir du logiciel ; c'est le cas de CDT. Dans Eclipse, cliquez sur Help -> Software updates -> Find and install... Ensuite, sélectionnez Search for new features to install, next, puis Callisto discovery site. Sélectionnez CDT, puis cliquez sur le bouton Select Required. Cliquez sur Finish.

2.6. Configurer Eclipse
Pour indiquer à Eclipse où se trouvent les DLL nécessaires à l'exécution des projets compilés, on peut indiquer leur chemin dans Window -> Preferences..., puis en dépliant C/C++, puis en sélecitonnant Managed Build. Cliquez sur New, sélectionnez Append, indiquez PATH dans la section Name. Ajoutez-y
;c:\cygwin\bin;c:\cygwin\usr\local\bin

(en fonction bien sûr du répertoire d'installation de Cygwin).

3. Programme de test

Vous pouvez maintenant créer un nouveau projet en utilisant le menu File->New->Project..., en dépliant le noeud C++, puis en choisissant Managed Make C++ Project. Ensuite, créez un fichier source avec File->New->Source File, que l'on peut appeler par exemple test.cpp.

Dans Project->Properties, dans l'onglet Tools Settings, ajoutez pour la section GCC C++ Compiler->Directories le répertoire C:\cygwin\usr\local\include ; dans la section GCC C++ Linker->Libraries->Libraries (-l), indiquez SDL. Enfin, dans GCC C++ Linker->Libraries->Library search path (-L), ajoutez C:\cygwin\usr\local\lib.

Copiez ensuite le petit programme suivant dans test.cpp:

#include

int main( int argc, char *argv[ ] )
{
SDL_Surface *screen;
if( SDL_Init(SDL_INIT_VIDEO) <>
{
printf( "Can't init SDL: %s\n", SDL_GetError( ) );
return(1);
}

screen = SDL_SetVideoMode(640, 480, 16, SDL_HWSURFACE);

if( screen == NULL )
{
printf( "Can't set video mode: %s\n", SDL_GetError());
SDL_Quit();
return(1);
}

SDL_Delay( 3000 );
SDL_Quit();

return 0;
}

pour le lancer, cliquez droit dans le menu Run->Run... afin de sélectionner New ; cliquez sur Search Project, pour sélectionner l'exécutable. Enfin, cliquez sur Run.

Si tout a bien fonctionné, une petite fenêtre noire devrait apparaître pendant quelques secondes.

4. Aller plus loin

SDL dispose de nombreux tutoriaux, dont celui-ci (en Français) ou celui-là (en Anglais).

5. Références

Tutorial Eclipse, C/C++ et SDL (Windows) en Espagnol

Page de tutoriaux sur le site officiel de SDL

Libellés : ,


21 mars 2006

Spam




16 mars 2006

La politique qui fait peur

Selon Le Monde, l'assemblée vient de voter l'interdiction "d'éditer et de mettre sciemment à disposition du public un logiciel permettant le téléchargement illégal d'œuvres ou d'objets protégées" - même si un "manifestement" vient pondérer le caractère arbitraire de cet amendement baptisé "Vivendi-Universal-Mariani" dans son texte original.

Mais comment évaluer l'objectif manifeste d'un logiciel? En se basant sur l'habituel "disclaimer" (texte qui sert généralement à dégager l'auteur de toute responsabilité) et en ne prenant pas en compte son potentiel hors du but premier auquel il est destiné? Ridicule.

Cela signifie-t-il qu'il sera légitime d'interdire la mise à disposition de toute implémentation logicielle d'un protocole de communication, tel que TCP/IP par exemple?

Même en dehors des problèmes d'interopérabilité posés par les dispositifs de protection des oeuvres (problèmes déjà existants ; il est par exemple impossible aujourd'hui d'effectuer un enregistrement original au micro sur son MiniDisc pour l'exploiter sur son PC sans passer par un câble analogique - ce qui donne lieu à une dégradation de sa qualité), on peut se poser des questions quant aux compétences de ceux qui ont écrit ces textes.

Il faut espérer que ce genre de cas soit exceptionnel...

15 mars 2006

Annonces Google



(source: http://www.courrierinternational.com/article.asp?obj_id=60841)

Libellés :


This page is powered by Blogger. Isn't yours?