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
blender_compilation [Le 11/09/2011, 15:48]
93.8.143.3 [Prérequis]
— (Version actuelle)
Ligne 1: Ligne 1:
-{{tag>​compilation}} 
------ 
  
- 
-====== Compiler Blender depuis les sources ====== 
- 
-**[[:​Blender]]** est une suite de modélisation,​ d'​animation et de rendu 3D. Si vous voulez simplement installer Blender, allez donc voir [[:​blender|cette page]] ; celle-ci étant dédiée uniquement à la compilation de la version de développement de Blender... 
- 
-<note important>​Nouvelle évolution ce jour de la dépendance liée à Python, Blender est très récemment passé sur la version 3.2 de Python, version pas encore disponible sur Ubuntu 10.10 à l'​heure où je vous parle, et ce commentaire deviendra obsolète avec la sortie d'​Ubuntu Natty 11.04 qui fournit Python 3.2 dans les dépôts. En attendant, je vous propose de lire le commentaire que j'ai posté [[http://​blenderclan.tuxfamily.org/​html/​modules/​newbb/​viewtopic.php?​post_id=368171#​forumpost368171|ICI]] sur le Blender Clan.</​note>​ 
- 
-<note important>​La compilation de la version de développement **Blender 2.5** nécessite l'​installation des paquets de développement de **Python 3.1**. Nous nous contenterons ici d'​installer les paquets d'​**Ubuntu 10.04 Lucid Lynx**, alors que dans une version plus ancienne il aurait fallu compiler Python 3.1 à la main.</​note>​ 
- 
- 
-===== Prérequis ===== 
- 
-Pour récupérer et compiler les sources de Blender, nous utiliserons [[:​subversion]] et [[:scons]]. 
- 
-  * Disposer d'une connexion à Internet configurée et activée ; 
-  * Avoir [[:​tutoriel:​comment_installer_un_paquet|installé les paquets]]: **[[apt://​subversion|subversion]],​ [[apt://​scons|scons]]** et **[[apt://​build-essential|build-essential]]** fournissant des outils de base ; 
-  * Avoir [[:​tutoriel:​comment_installer_un_paquet|installé les paquets]]: **[[apt://​g++|g++]],​ [[apt://​libx11-dev|libx11-dev]],​ [[apt://​libgl1-mesa-dev|libgl1-mesa-dev]],​ [[apt://​libxi-dev|libxi-dev]],​ [[apt://​zlib1g-dev|zlib1g-dev]],​ [[apt://​libpng12-dev|libpng12-dev]],​ [[apt://​libglu1-mesa-dev|libglu1-mesa-dev]],​ [[apt://​libjpeg62-dev|libjpeg62-dev]],​ [[apt://​libfreetype6-dev|libfreetype6-dev]],​ [[apt://​libtiff4-dev|libtiff4-dev]],​ [[apt://​libopenexr-dev|libopenexr-dev]],​ [[apt://​libsdl1.2-dev|libsdl1.2-dev]],​ [[apt://​libopenal-dev|libopenal-dev]],​ [[apt://​python3-dev|python3-dev]],​ [[apt://​libfftw3-dev|libfftw3-dev]],​ [[apt://​libsamplerate0-dev|libsamplerate0-dev]],​ [[apt://​libjack-dev|libjack-dev]],​ [[apt://​libavformat-dev|libavformat-dev]],​ [[apt://​libxvidcore-dev|libxvidcore-dev]],​ [[apt://​libx264-dev|libx264-dev],​ [[apt://​libmp3lame-dev|libmp3lame-dev]],​ [[apt://​libavdevice-dev|libavdevice-dev]],​ [[apt://​libswscale-dev|libswscale-dev]],​ [[apt://​|g++ libx11-dev]],​ [[apt://​|libgl1-mesa-dev]],​ [[apt://​|libxi-dev]],​ [[apt://​|zlib1g-dev]],​ [[apt://​|libpng12-dev]],​ [[apt://​|libglu1-mesa-dev]],​ [[apt://​|libjpeg62-dev]],​ [[apt://​|libfreetype6-dev]],​ [[apt://​|libtiff4-dev]],​ [[apt://​|libopenexr-dev]],​ [[apt://​|libsdl1.2-dev]],​ [[apt://​|libopenal-dev]],​ [[apt://​|python3-dev]],​ [[apt://​|libfftw3-dev]],​ [[apt://​|libsamplerate0-dev]],​ [[apt://​|libjack-dev]],​ [[apt://​|libavformat-dev]],​ [[apt://​|bxvidcore-dev]],​ [[apt://​|libx264-dev]],​ [[apt://​|libmp3lame-dev]],​ [[apt://​|libavdevice-dev]]** et **[[apt://​|libswscale-dev]]** spécifiques à la compilation de Blender. 
- 
- 
- 
-===== Récupérer les sources de Blender ===== 
- 
-Pour récupérer l'​arbre complet des sources de Blender, utilisez [[:​subversion]] avec la commande suivante dans un [[:​terminal]] :​ 
-Les sources récupérées seront dans le dossier courant dans un répertoire blender 
-<​code>​svn checkout https://​svn.blender.org/​svnroot/​bf-blender/​trunk/​blender blender</​code>​ 
- 
-<note important>​Attention ! 
-Les sources de Blender prennent environ 180 Mo d'​espace sur le disque dur, veillez à avoir une marge suffisante pour pouvoir compiler ; ce qui va encore prendre de l'​espace disque. 
- 
-Il vous faudra en tout environ 260 Mo d'​espace libre sur votre disque dur pour pouvoir compiler Blender. Bien entendu, une fois la compilation achevée, vous pouvez supprimer tout les fichiers servant à la compilation,​ ce qui n'​utilisera plus qu'​environ 10 Mo.</​note>​ 
- 
- 
-==== Mettre les sources à jour ==== 
- 
-Comme les sources de Blender évoluent très vite, vous voudrez sans-doute mettre à jour les sources à la dernière révision de temps en temps. 
-Pour cela, lancez simplement, une fois [[:​tutoriel:​console_commandes_de_base#​cd|rendu dans le répertoire]] « blender »,​ la commande suivante : 
- 
-   svn update 
- 
-Il vous suffira alors de relancer la [[#​Compilation|compilation]] pour utiliser les nouvelles sources. 
- 
- 
-===== Compilation ===== 
- 
-Une fois les [[#​Prérequis|dépendances]] installées,​ [[:​tutoriel:​console_commandes_de_base#​cd|rendez-vous dans le dossier]] « blender » puis lancez simplement la compilation avec [[:scons]] : 
- 
-   scons 
- 
-<​note>​Pour les heureux possesseurs de processeurs multicœurs,​ vous pouvez spécifier l'​option //-j N// pour une compilation utilisant //N// cœurs. Par exemple, sur un Core2Duo, la compilation sera plus rapide avec : 
-<​code>​scons -j 2</​code></​note>​ 
- 
-<​note>​La compilation avec la commande **scons** résulte en une erreur si vous tentez de compiler le SVN avec Ubuntu 8.04. Il faut utiliser plutôt la commande **python scons/​scons.py**</​note>​ 
- 
-Une fois la compilation terminée, votre Blender tout chaud se trouve dans le dossier « ../​build/​linux2/​bin/​ ». 
- 
- 
-====Note sur les fichiers de bibliothèques manquantes==== 
-La compilation lancée, il est possible qu'​elle s'​arrête malheureusement sur une erreur... Pas de panique ! La chose à faire, c'est de bien observer le message d'​erreur,​ qui indique quelle bibliothèque est manquante, et d'​ensuite installer le paquet Ubuntu qui lui correspond. Par exemple, si l'​erreur est à propos d'un certain "​glut.h",​ le paquet à installer sera libglut-dev. A chaque fois que vous installez la bibliothèque,​ prenez bien sa version //-dev//. Une fois la bibliothèque installée, relancez scons, puis au prochain message d'​erreur installez la nouvelle librairie manquante. 
- 
-A un moment la compilation va se terminer avec succès. Allez dans le répertoire build, vous y trouverez le binaire de votre compilation ! 
- 
- 
- 
-==== Personnaliser les options de compilation ==== 
- 
-Un fichier qui contient les options de compilation par défaut de Blender se trouve dans « build_files/​scons/​config/​linux2-config.py ». Parce qu'il peut être mis à jour à tout moment au travers du SVN, **il est très déconseillé de le modifier directement**. Ne vous inquiétez pas tout est prévu : il vous suffit de créer un fichier « user-config.py » vide à la base du dossier Blender. Vous le remplirez à votre guise afin de définir une option qui diffère de celle par défaut. Au besoin, n'​hésitez pas à consulter l'aide [[:​tutoriel:​comment_editer_un_fichier|comment modifier un fichier]]. 
- 
-=== Activer le moteur de jeu === 
- 
-Le fichier d'​origine « build_files/​scons/​config/​linux2-config.py » contient la variable <​code>​WITH_BF_GAMEENGINE=False</​code>​Ajoutez donc dans votre fichier personnalisé « user-config.py » la variable comme suit : <​code>​WITH_BF_GAMEENGINE=True</​code>​Relancez la compilation via scons, et normalement,​ le moteur de jeu est alors activé. 
- 
-=== Activer Verse === 
- 
-Si vous souhaitez utiliser Blender à plusieurs, Verse se fait vite indispensable. Pour l'​activer,​ ajoutez au fichier « user-config.py » ceci : <​code>​WITH_BF_VERSE = True</​code>​ plutôt que <​code>​WITH_BF_VERSE = False</​code>​ 
-Il faudra de même relancer une compilation via scons. 
- 
-=== Activer YafRay (dans le cas d'une compilation personnelle de ce dernier) === 
- 
-On remarque que Blender ne peut pas utiliser [[wpfr>​YafRay]] s'il a été compilé. Afin de remédier à cela, cherchez la ligne (toujours dans votre fichier de configuration) :​ <​code>​WITH_BF_YAFRAY = True</​code>​ (On remarque que YafRay est activé par défaut, et qu'il est donc intéressant de le télécharger directement depuis les dépôts). Rajoutez ensuite la ligne suivante : <​code>​BF_YAFRAY = '​[Chemin vers YafRay]'</​code>​ 
- 
-=== Optimiser la compilation pour son type de processeur === 
- 
-Par défaut la compilation qui s'​effectue est capable de tourner aussi bien sur un vieux processeur Pentium® de première génération que sur votre tout dernier petit bijou de technologie qui équipe votre machine actuelle. En d'​autres termes, cela signifie qu'il y a un réel manque à gagner en utilisant les spécificités de votre processeur moderne. 
- 
-On appelle cela les **flags GCC**, et vous pourrez facilement trouver ceux qui correspondent le mieux à votre processeur via n'​importe quel bon moteur de recherche ou avec la commande ''​cat /​proc/​cpuinfo'',​ à la ligne //flags//. Comme toutes les options précédentes,​ il s'​ajoutent dans votre fichier de configuration personnel. Ils diffèrent complètement d'un processeur à l'​autre,​ et chercher à optimiser sans savoir où l'on va peut évidemment se traduire en perte de performances et autres plantages, donc **prudence et n'​hésitez pas à valider vos flags avec des tests**. 
- 
-Prenez le temps de lire [[http://​gcc.gnu.org/​onlinedocs/​gcc-4.3.2/​gcc/​i386-and-x86_002d64-Options.html#​i386-and-x86_002d64-Options|cette page de documentation de gcc]] pour trouver quelles options correspondent à votre architecture de microprocesseur (option //​-march//​). 
- 
-Voici ceux que j'​utilise sur un Core2Duo, et qui me permettent d'​obtenir un gain minimum de 25% de performances au rendu en 32 bits :<​code>###​ flags d'​optimisation ## 
-CCFLAGS.extend( [ '​-march=core2',​ '​-O2'​ ] ) 
-CXXFLAGS.extend( [ '​-march=core2',​ '​-O2'​ ] ) 
-REL_CFLAGS = ['​-O2'​] 
-REL_CCFLAGS = ['​-O2'​]</​code>​ 
- 
-==== Patcher Blender ==== 
- 
-Il est possible d'​appliquer des patchs a Blender afin de profiter de diverses fonctionnalités supplémentaires. ​ 
- 
-Pour ce faire, récupérez les patchs que vous désirez sur [[https://​projects.blender.org/​tracker/?​atid=127&​group_id=9&​func=browse|BlenderProject]] ou sur un autre site et placez les fichier à la racine de votre répertoire des sources téléchargées précédemment. 
- 
-Ouvrez un [[terminal]] et rendez-vous dans les répertoire des sources puis tapez : 
- 
-<​code>​patch -p0 < nom_de_votre_fichier_patch</​code>​ 
- 
-Pour restaurer les sources d'​avant l'​application d'un patch il suffit de rajouter l'​option -R: 
- 
-<​code>​patch -p0 -R < nom_de_votre_fichier_patch</​code>​ 
- 
-Il vous suffit de faire cette manipulation pour chaque patch (ou d'​automatiser la procédure par un script) et de relancer la compilation pour profiter des nouvelles fonctionnalités. 
- 
- 
- 
-===== Liens ===== 
- 
-  * [[http://​www.blender.org/​|Site officiel de Blender]] 
-  * [[http://​blenderclan.tuxfamily.org/​html/​modules/​newbb/​viewtopic.php?​topic_id=12465|Source originale de cette page]] 
- 
----- 
-//​Contributeurs : [[:​utilisateurs:​ebrain]] (rédaction),​ [[:​utilisateurs:​Ban]],​ [[:​utilisateurs:​olivS]],​ [[:​utilisateurs:​M@dinko12]]//​ 
  • blender_compilation.1315748880.txt.gz
  • Dernière modification: Le 15/12/2011, 15:18
  • (modification externe)