Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
sfml [Le 11/03/2016, 13:09]
q7frkz [Installation de la SFML]
sfml [Le 20/12/2021, 23:18]
wiki-corrector-bot passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
 +
 {{tag>​programmation multimédia BROUILLON}} {{tag>​programmation multimédia BROUILLON}}
- +====== SFML : Simple and Fast Multimedia Library====== 
----- +**SFML** (Simple and Fast Multimedia Library) ​est une API Multimedia 2D, créée à l'​origine en C++, et maintenant également disponible en C, RubyPython ​([[https://​www.sfml-dev.org/​download/​bindings.php|voir les autres bindings]]). Elle est apparue en Juillet 2007. 
- +Elle est orientée objet et fournit un accès bas niveau et haut niveau aux graphismes, aux évènements,​ à l'​audio,​ etc. Elle rassemble toutes les fonctionnalités de la [[:sdl|SDL]] (et bien d'​autres),​ tout en proposant des performances largement supérieures,​ grâce à l'​utilisation d'[[:opengl|OpenGL]] (accélération matérielle). Elle est distribuée sous la licence zlib/png.
-=====  Simple and Fast Multimedia Library ===== +
- +
-SFML est une API Multimedia 2D, créée à l'​origine en C++, et maintenant également disponible en C, Ruby et Python. Elle est apparue en Juillet 2007. +
-Elle est orientée objet et fournit un accès bas niveau et haut niveau aux graphismes, aux évènements,​ à l'​audio,​ etc. Elle rassemble toutes les fonctionnalités de la SDL (et bien d'​autres),​ tout en proposant des performances largement supérieures,​ grâce à l'​utilisation d'​OpenGL (accélération matérielle). Elle est distribuée sous la licence zlib/png.+
 Un de ses avantages est d'​être multiplateforme. Un de ses avantages est d'​être multiplateforme.
  
-Site officiel de la bibliothèque (Français/​Anglais) : http://​www.sfml-dev.org/​index-fr.php+[[https://​www.sfml-dev.org/​index-fr.php|lien vers le site officiel]] de la bibliothèque (Français/​Anglais) :
 Vous y trouverez documentation,​ tutoriels et forums Vous y trouverez documentation,​ tutoriels et forums
  
-==== Fonctionnement ​====+===== Structure =====
  
 La SFML se divise en 5 modules : La SFML se divise en 5 modules :
Ligne 23: Ligne 20:
 La division en modules permet à chacun de n'​utiliser que ce dont il a besoin. La division en modules permet à chacun de n'​utiliser que ce dont il a besoin.
  
-D'un point de vue graphique, SFML utilise OpenGL en interne, ainsi vous pouvez sans aucun problème et encore plus simplement qu'​avec la SDL (pas d'​initialisation nécessaire) utiliser vos propres appels OpenGL, voire même mixer les rendus SFML/​OpenGL.+D'un point de vue graphique, SFML utilise ​[[:opengl|OpenGL]] en interne, ainsi vous pouvez sans aucun problème et encore plus simplement qu'​avec la SDL (pas d'​initialisation nécessaire) utiliser vos propres appels OpenGL, voire même mixer les rendus SFML/​OpenGL.
  
  
-==== Installation de la SFML ==== +===== Installation de la SFML ===== 
-=== Depuis les dépôts ===+==== Depuis les dépôts ​====
  
-SFML est disponible dans les dépôts Ubuntu dans sa version 2.1, dans les paquets libsfml-*. ​Il vous suffit donc de faire la commande suivante ​pour installer SFML dans sa version 2.1 sur Ubuntu ​:+SFML est disponible dans les dépôts Ubuntu dans sa version 2.5.1, dans les paquets libsfml-*. 
 + 
 +Installez le paquet **[[apt>​libsfml-dev]]** ou tapez dans un terminal ​la commande suivante :
  
 <​code>​sudo apt-get install libsfml-dev</​code>​ <​code>​sudo apt-get install libsfml-dev</​code>​
  
-=== Depuis les sources ===+==== Depuis les sources ​====
  
-Pour compiler et installer SFML depuis le code source, on peut suivre le tutoriel de Laurent Gomila à l'​adresse suivante : [[http://​sfml-dev.org/​tutorials/​2.1/​compile-with-cmake-fr.php|Compiler SFML avec CMake]]. Je vais suivre ce tutoriel et vous indiquer ce qu'il faut faire pour Ubuntu.+Pour compiler et installer SFML depuis le code source, on peut suivre le tutoriel de Laurent Gomila à l'​adresse suivante : [[http://​sfml-dev.org/​tutorials/​2.5/​compile-with-cmake-fr.php|Compiler SFML avec CMake]]. Je vais suivre ce tutoriel et vous indiquer ce qu'il faut faire pour Ubuntu.
  
 Tout d'​abord,​ il vous faudra certains paquets, car SFML dépend de certaines bibliothèques. Tout d'​abord,​ il vous faudra certains paquets, car SFML dépend de certaines bibliothèques.
Ligne 41: Ligne 40:
 <​code>​sudo apt-get install g++ build-essential libpthread-stubs0-dev libgl1-mesa-dev libx11-dev libxrandr-dev libfreetype6-dev libglew-dev libjpeg-dev libsndfile1-dev libopenal-dev</​code>​ <​code>​sudo apt-get install g++ build-essential libpthread-stubs0-dev libgl1-mesa-dev libx11-dev libxrandr-dev libfreetype6-dev libglew-dev libjpeg-dev libsndfile1-dev libopenal-dev</​code>​
  
-Ensuite, téléchargez les sources depuis la page de téléchargements de SFML, voici le lien direct vers les sources de la version 2.1 : +Ensuite, téléchargez les sources depuis la page de téléchargements de SFML, voici le lien direct vers les sources de la version 2.5.1 : 
-[[http://​sfml-dev.org/​download/​sfml/​2.1/​SFML-2.1-sources.zip|Sources de SFML 2.1]]+[[https://www.sfml-dev.org/​download/​sfml/​2.5.1/index-fr.php|Sources de SFML 2.5.1]]
  
 Si la version a changé depuis, vous pouvez aller sur la page générale des téléchargements pour trouver les nouvelles sources (en bas de la page de la dernière version stable) : http://​sfml-dev.org/​download-fr.php Si la version a changé depuis, vous pouvez aller sur la page générale des téléchargements pour trouver les nouvelles sources (en bas de la page de la dernière version stable) : http://​sfml-dev.org/​download-fr.php
  
-Une fois le code source téléchargé,​ dézippez l'​archive dans votre dossier home (chemin : /​home/​votreNom/​) par exemple. Vous devez avoir un fichier CMakeLists.txt accessible via le chemin /​home/​votreNom/​SFML-x.x/​CMakeLists.txt avec SFMLx.x votre version de SFML (SFML-2.1 dans mon cas).+Une fois le code source téléchargé,​ dézippez l'​archive dans votre dossier home (chemin : **/​home/​votreNom/​**) par exemple. Vous devez avoir un fichier CMakeLists.txt accessible via le chemin ​**/​home/​votreNom/​SFML-x.x/​CMakeLists.txt** avec SFMLx.x votre version de SFML.
  
-Installez cmake avec la version graphique cmake-gui, qui vous permettra de générer des makefile correspondant à votre système avec les sources de SFML :+Installez ​[[:cmake|cmake]] ​avec la version graphique cmake-gui, qui vous permettra de générer des makefile correspondant à votre système avec les sources de SFML :
 <​code>​sudo apt-get install cmake-gui</​code>​ <​code>​sudo apt-get install cmake-gui</​code>​
  
Ligne 61: Ligne 60:
 Sur la fenêtre qui apparaît, laissez les options par défaut et cliquez sur Finish. Cmake vérifie que vous avez toutes les dépendances nécessaires à la compilation de SFML. Si tout se passe bien, le message "​Configuratig done." s'​affiche en bas de la fenêtre, et des lignes apparaissent sur fond rouge comme dans la capture d'​écran ci-dessous. ​ Sur la fenêtre qui apparaît, laissez les options par défaut et cliquez sur Finish. Cmake vérifie que vous avez toutes les dépendances nécessaires à la compilation de SFML. Si tout se passe bien, le message "​Configuratig done." s'​affiche en bas de la fenêtre, et des lignes apparaissent sur fond rouge comme dans la capture d'​écran ci-dessous. ​
  
-<note important>​Si quelque chose s'est mal passé, c'est qu'il vous manque quelque chose, réinstallez les librairies (commande plus haut) ou référez-vous au tutoriel officiel du site SFML.</​note>​+<note important>​Si quelque chose s'est mal passé, c'est qu'il vous manque quelque chose, réinstallez les librairies (commande plus haut) ou référez-vous au [[https://​www.sfml-dev.org/​tutorials/​2.5/​compile-with-cmake-fr.php|tutoriel officiel]] du site SFML.</​note>​
  
 {{https://​dl.dropboxusercontent.com/​u/​28570337/​tuto_ubuntu/​img3.png}} {{https://​dl.dropboxusercontent.com/​u/​28570337/​tuto_ubuntu/​img3.png}}
Ligne 67: Ligne 66:
 Pour ma part, j'ai laissé les options par défaut, vous avez les détails de ces options sur le tutoriel officiel du site SFML. Recliquez sur "​Configure",​ le fond des lignes passe alors en blanc. Pour générer les makefile, cliquez maintenant sur "​Generate"​. Une fois que le message "​Generating done" apparaît, vous pouvez fermer cmake-gui : les makefile sont générés. Pour ma part, j'ai laissé les options par défaut, vous avez les détails de ces options sur le tutoriel officiel du site SFML. Recliquez sur "​Configure",​ le fond des lignes passe alors en blanc. Pour générer les makefile, cliquez maintenant sur "​Generate"​. Une fois que le message "​Generating done" apparaît, vous pouvez fermer cmake-gui : les makefile sont générés.
  
-Pour effectuer l'​installation de SFML, allez dans le dossier où vous avez généré les fichiers, et effectuez les commandes "​make"​ puis "sudo make install"​ (le sudo nécessite votre mot de passe). Pour ma part, voici les commandes que j'​exécute :+Pour effectuer l'​installation de SFML, allez dans le dossier où vous avez généré les fichiers, et effectuez les commandes "​make"​ puis "sudo make install"​ (le [[:sudo|sudo]] ​nécessite votre mot de passe). Pour ma part, voici les commandes que j'​exécute :
  
 <​code>​cd /​home/​valentin/​sfml-dev <​code>​cd /​home/​valentin/​sfml-dev
Ligne 83: Ligne 82:
 ldconfig</​code></​note>​ ldconfig</​code></​note>​
  
-=== Binding Python ===+==== Installez le Binding Python ===
 + 
 +Si vous souhaitez profiter de la SFML en [[:​python|Python]],​ vous devrez installer le binding Python, et ce après avoir installé bien sûr la bibliothèque C++ originale. 
 + 
 +Voyez pour cela [[https://​www.sfml-dev.org/​tutorials/​1.6/​start-python.php|le tutoriel]] (un peu dépassé)\\  
 + 
 +  sudo apt-get install libxcb-image0 libxcb-image0-dev 
 +  sudo apt-get install libudev-dev 
 +   
 +Ces deux entrées vous seront utiles pour que cmake parviennent a s'​installer sans soucis. FIXME (à vérifier)
  
-Si vous souhaitez profiter de la SFML en Python, vous devrez installer le binding Python, et ce après avoir installé bien sûr la bibliothèque C++ originale. +===== Programmer =====
-Voyez pour cela le tutoriel : http://​www.sfml-dev.org/​tutorials/​1.6/​start-python.php+
  
----------------------------+Un cours [[https://​www.sfml-dev.org/​tutorials/​2.5/​start-linux.php|tutoriel sur la page officiel]] ​ pour débuter, à traduire.
  
-Je me permets une légère modification de la page, pour les possesseurs de Lubuntu : +===== Désinstallation =====
-sudo apt-get install libxcb-image0 libxcb-image0-dev +
-sudo apt-get install libudev-dev+
  
-ces deux entrées ​vous seront utiles pour que cmake parviennent a installer sans soucis+Supprimer les paquets que vous avez installé en souhaitant l'​utiliser
-je laisse le droit au professionel de ubuntu de modifier mon post mal fait avec bien plus d'info et de détails ... :+[[tutoriel:comment_supprimer_un_paquet|Comment supprimer un paquet ?]]
-merci+
  • sfml.txt
  • Dernière modification: Le 11/09/2022, 11:51
  • par moths-art