Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
rendu5.png
Publicité
Formation Blender ElephormBlender 3d Elephorm


     






Comment compiler Blender sous Ubuntu ?
Ze Grand Manitou
Inscrit:
24/07/2003 15:50
De la Région Parisienne
Post(s): 20751
Comment compiler Blender sous Ubuntu ?

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 installé les paquets subversion scons build-essential fournissant des outils de base ;
* Avoir installé les paquets python2.6-dev libjpeg62-dev libpng12-dev zlib1g-dev libopenal-dev libalut-dev libsdl1.2-dev libtiff4-dev libopenexr-dev libxi-dev libfreetype6-dev gettext yasm 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 :
svn checkout https://svn.blender.org/svnroot/bf-blender/trunk/blender blender


Citation :
Attention !
Les sources de Blender prennent environ 180 Mo d'espace sur le disque dur, veuillez à 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.


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 rendu dans le répertoire « blender », la commande suivante :
svn update

Il vous suffira alors de relancer la compilation pour utiliser les nouvelles sources.

Compilation

Une fois les dépendances installées, rendez-vous dans le dossier « blender » puis lancez simplement la compilation avec scons :
scons

Citation :
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 :
scons -j 2

Citation :
La compilation avec la commande scons résulte en une erreur si vous tentez de compiler le SVN avec Ubuntu 8.04 ou 8.10. Il faut utiliser plutôt la commande python scons/scons.py.


Une fois la compilation terminée, votre Blender tout chaud se trouve dans le dossier « ../build/linux2/bin/ ».

Personnaliser les options de compilation

Un fichier qui contient les options de compilation par défaut de Blender se trouve dans « ../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.

* Activer le moteur de jeu *

Le fichier d'origine « ../config/linux2-config.py » contient la variable
WITH_BF_GAMEENGINE='false'
Ajoutez donc dans votre fichier personnalisé « user-config.py » la variable comme suit :
WITH_BF_GAMEENGINE='true'
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 :
WITH_BF_VERSE = 'true'
plutôt que
WITH_BF_VERSE = 'false'

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 YAFRay s'il a été compilé. Afin de remédier à cela, cherchez la ligne (toujours dans votre fichier de configuration) :
WITH_BF_YAFRAY = 'true'
(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 :
BF_YAFRAY = '[Chemin vers YAFRay]'


* 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. 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.

Voici ceux que j'utilise sur un Core2Duo, et qui me permettent d'obtenir un gain minimum de 25% de performances au rendu :
### flags d'optimisation ##
CCFLAGS.extend( [ '-march=core2', '-O2' ] )
CXXFLAGS.extend( [ '-march=core2', '-O2' ] )
REL_CFLAGS = ['-O2']
REL_CCFLAGS = ['-O2']


Note sur les fichiers de libs manquantes :
Citation :

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 lib est manquante, et d'ensuite installer le package d'ubuntu qui lui correspond. Par exemple, si l'erreur est à propos d'un certain "glut.h", le package à installer sera libglut-dev. A chaque fois que vous installez la librairie, prenez bien sa version -dev. Une fois la lib 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 !


----
Adapté de mon tutoriel écrit pour ubuntu-fr ICI

Contribution le : 10/02/2008 18:00
_________________

Mickaël Guédon | Site pro : www.mickaelguedon.com | Fondateur du Blender Clan : www.blenderclan.org
Auteur de Formations Blender chez Elephorm
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Concours Défis Du Week-End 20 - Gagnant : BILL    [1][2][3]...[8] 76 2208 Aujourd'hui 18:05:19
nepher18 
The Blender Clan 'tchat Avez toujours du plaisir sur Blender ? 8 139 Aujourd'hui 17:54:10
impakt 
Le coin des geeks GTX780 et Cycles 3 87 Aujourd'hui 17:32:47
BILL 
Questions & Réponses [résolu] Objet n'apparait pas au rendu.    [1][2] 10 114 Aujourd'hui 17:29:53
GreenGiant 
Questions & Réponses Rendu de scene1 dans un plan de scene2    [1][2] 10 323 Aujourd'hui 16:29:48
yekcim 
The Blender Clan 'tchat Tenté par un concours BGE ?    [1][2][3]...[5] 40 899 Aujourd'hui 16:09:03
TeTine 
Concours AC/BC no 8 : "OUPS!" !!! Deadline => 26/05 !!!    [1][2] 11 625 Aujourd'hui 15:47:11
tynaud 
[WIP] et travaux terminés [terminé] Projets Divers (Mr Horizontal & Mme Verticale) page 15    [1][2][3]...[15] 146 17333 Aujourd'hui 14:40:01
adam 
Questions & Réponses [résolu] probleme de rendu avec incrustation de mesh dans video    [1][2] 14 85 Aujourd'hui 14:27:50
DoubleZ 
[WIP] et travaux terminés [WIP] Nouveau sculpt de mamuth    [1][2] 11 851 Aujourd'hui 14:27:32
otsoa 
[WIP] et travaux terminés [WIP] Lit    [1][2] 10 485 Aujourd'hui 14:10:02
Saphir 
[WIP] et travaux terminés [WIP] Papa_Dragon apprend l'orga :)    [1][2][3]...[5] 48 2468 Aujourd'hui 13:55:13
Papa_Dragon 
Dessin traditionnel Les Lazy Dessins Du Squirrel    [1][2][3]...[14] 132 9098 Aujourd'hui 13:54:36
Jimoke 
The Blender Clan 'tchat Le topic des trucs à voir    [1][2][3]...[254] 2534 360677 Aujourd'hui 13:27:46
TeTine 
[WIP] et travaux terminés [WIP] Aurore three (d'après un dessin de David revoy)    [1][2][3] 20 1069 Aujourd'hui 11:25:34
ForgetTheNorm 
Questions & Réponses [non résolu] Modéliser, séparer un tuyau, je bloque! 8 521 Aujourd'hui 11:02:58
logiquefloue 
Questions & Réponses [résolu] Problème placage texture 7 230 Aujourd'hui 10:22:59
Cyrille 
The Blender Clan 'tchat Cherche prof ! 1 135 Aujourd'hui 09:29:26
viralata 
[WIP] et travaux terminés [WIP] Kentauroi 9 624 Aujourd'hui 07:52:14
steph79 
Moteur de jeu GameBlender et alternatives personnage low poly (impro) 1 105 Aujourd'hui 07:51:06
jimmydu54 

Qui est en ligne
54 utilisateur(s) en ligne (dont 39 sur Forums)

Membre(s): 8
Invité(s): 46


ForgetTheNorm, GreenGiant, nepher18, Blob4, clouclou, impakt, Bjo, Remibug, plus...
Nouveaux membres
Zen-A 24/5/2013
Lorindan 24/5/2013
filoudb 24/5/2013
GreenGiant 24/5/2013
respect62 24/5/2013
shabtai411 22/5/2013
Melanie56 22/5/2013
lelouis1er 22/5/2013
Styrinx 22/5/2013
Razoumikhine 21/5/2013
Dernier Ajout
saak.jpg

Evènements à venir
Mai 24
Défis Du Week-End
Mai 31
Défis Du Week-End
plus 408 plus d'élément(s)
 By Mickaël Guédon [ebrain] © 2003-2013 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445