Linux Blender FAQ

GENERAL
What is different in Blender for Linux, compared to Blender for other platforms?
Is there any advantage of running Blender in Linux?
Blender is running very slowly on Linux, why?
Do I need any particular window manager or graphic desktop to run Blender?
How do I find out if I'm using acceleration for my graphics card?
How will my graphics card behave with Blender and Linux?
If I make a .blend file in Linux, can it be opened in other platforms?
What about binary plug-ins? Can they be used across different platforms?

INSTALLING
Do I need root access to install Blender?
Why isn't there an automated installer?
How do I install Blender on my Linux system?
Why are hotkeys not working the way they should?
What do these error messages mean?  
	"Could not find platform independent libraries <prefix>" 
	"Could not find platform dependent libraries <exec_prefix>" 
	"Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]" 
	"'import site' failed; use -v for traceback"
	"sys_init:warning - no sitedirs added from site module."
How can I solve drawing errors in the interface?
What does the error Xlib: extension "GLX" missing on display ":0.0" mean?
What does the error about  a missing libstdc++-libc6.1-1.so.2 mean?
What does "ERROR: File .blanguages not found" mean?
Animating an empty scene crashes Blender

MISCELLANEOUS / MORE INFORMATION
What about scaling up?
Where do I find more information?
I have some contributions for this document, how do contact the FAQ maintainer?

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
GENERAL

* What is different in Blender for Linux, compared to Blender for other platforms?

On the Windows version there is a button in the GUI (on the top bar) for switching between window mode and full screen mode. On the Linux version that button does not exist  and, by default, Blender starts in full screen mode. To start Blender in window mode you should use the -w option: ./blender -w

On the Windows (and OSX, I've been told) version you can render your animations to video files already compressed with the codecs installed on your computer (there is an option for this on the rendering buttons), but at the time of this writing, under Linux, you can only use the MJPEG codec or no codec at all. For further video compression you will need to render your animations to an uncompressed file, and then use another program to do any needed video compression, or render your animations to sequenced image files and use a video composition program to create the final video file. (By taking this last route you could do all the actual rendering on Linux and only do the final video composition using Blender for other platform).

In the near future, a .zip file containing the basic Python libraries will be distributed alongside the Windows version of Blender (thus, in most cases doing a full Python install would not be necessary for running complex scripts).  On Linux you are required to do a full Python install if you want to run complex scripts (but there is a very good chance that Python is already installed on your computer, since Python is a de facto component on most Linux distros).

* Is there any advantage to running Blender on Linux?

Yes, especially in the speed department. Many users (including me) have reported that Blender loads and renders noticeably faster in Linux than in other operating systems.  Please take note that no matter what operating system you are using, rendering from the command line is (in 99% of the cases) faster than rendering from the GUI.

Besides, considering consumed computer resources, Linux places a lighter load on your CPU, and leaves more free resources to be used for actual 3D work.

* Blender is running very slowly in Linux, why?

Your first stop should be the advice given at http://www.elysiun.com/forum/viewtopic.php?t=13722

If those advices don't solve the problem then your next stop is checking if you are getting hardware acceleration for OpenGL operations (Blender uses OpenGL for all its GUI drawing operations, so having an OpenGL accelerated graphic card truly makes a difference when it comes to GUI response time.)

Find out which GLX driver is been used on your system (more info on that bellow); if you get "Mesa GLX Indirect" it means that you are NOT using any hardware acceleration at all.

Check if your graphics card maker provides Linux drivers for your card. By replacing the general purpose Indirect Mesa driver with a driver made specifically for your card you could see speed increases up to 400% (my own experience) or more.

Nvidia, ATI and many other graphics card manufacturers provide Linux specific drivers for their cards. Bear in mind that those speed increases might come at the cost of some stability issues.  

Blender supports both Mesa and proprietary glx drivers, but some users have reported buggy behavior coming from using proprietary drivers, while other users have reported outstanding performance gains without any trouble.  

* Do I need any particular window manager or graphic desktop to run Blender?

No. As long as you have a working X system (Xorg/Xfree86/etc) and an OpenGL driver (see next question) you should be fine. There is no difference from using KDE, GNOME or whatever your desktop manager might be.

* How do I find out if I'm using acceleration for my graphic card?

Within Blender, open a new text window and type this:

from Blender.BGL import * 
print "GL Vendor  ", glGetString(GL_VENDOR) 
print "GL Renderer", glGetString(GL_RENDERER) 
print "GL Version ", glGetString(GL_VERSION)

Now press Alt-P or click on File -> Run Python Script. Go to your console and see what is printed. If you find something like:

"Mesa GLX Indirect 
Mesa project: www.mesa3d.org 
1.3 Mesa 4.0.4"

then you are not using acceleration for your graphics card (noticed the "Indirect" word?).  On the other hand, if you get something like:

"GeForce4 Ti 4200 with AGP8X/AGP/SSE2 
NVIDIA Corporation 
1.4.0 NVIDIA 43.63"

or like:

"GeForce2 MX/PCI/3DNOW! 
NVIDIA Corporation 
1.3.1 NVIDIA 31.23"

or even like:

"GL Vendor VA Linux Systems, Inc. 
GL Renderer Mesa DRI Voodoo3 20010501 x86/MMX/3DNow! 
GL Version 1.2 Mesa 3.4.2"

it means that you are using a real accelerated graphic driver.

Another way to find information about your current OpenGL setup is by using the glxinfo command; that will yield more technical oriented data about your system. Just be prepared to pipe the output trough a LESS command since glxinfo can sometimes be quite verbose. (The information you need should be in the first five lines, so "glxinfo | head -5" would work).

There is even another way to find important information about your current setup: On the Help menu choose System -> System Information.  Then open a text-editor Window within Blender. 

Now. on the tex editor window, click on the Data-Browser icon (third from the left, counting from the "File" menu) and you will find an already made text called "system-info.txt" with many details about your system.

* Why are there 2 versions of Blender for Linux? What does the static/dynamic mean?

Actually there are 4 versions of Blender for Linux, two for x86 processors and two for PowerPC processors.  For each processor family we have dynamic and static builds available. (2 x 2 = 4).

On a static build a software based OpenGL environment is bundled, and the stand alone BlenderPlayer is removed. So if you are having dependency errors or you are unable to find a proper OpenGL driver for your graphic card the static build should run on your system. You should consider a static build as a troubleshooting/worst case scenario option.

On a dynamic build, the dependencies are not included, so Blender will use the libraries already installed and available on your system. Also, Blender will use any OpenGL accelerated driver that it might find on your system. Generally speaking, a dynamic build should be preferred over a static build.

Always make sure, despite your static or dynamic choice, to download the version that matches your processor. If you have an Intel, AMD or Cyrix processor you should go with the i386 version. If you have a Macintosh (or one of those rare Motorola CPUs) then you should go with the PPC version.

* How will my graphics card behave with Blender and Linux?

The best way to find out is to look at the testimonials of users who have a graphics card that is the same as or similar to yours.
Go and take a look into the official Blender OpenGL/Gfx database located at http://blender.org/modules/gfxdatabase/

* If I make a .blend file in Linux, can it be opened in other platforms?

Yes. Every .blend made in any platform should open in any other platform. If you ever come across a .blend file that opens OK in a platform but won't open on another platform then you have officially found a bug and we would be most interested in hearing about it on our Bug tracker, located at http://projects.blender.org/tracker/?atid=125&group_id=9&func=browse

* What about binary plug-ins? Can they be used cross platform?

No. A binary plug-in must be compiled specifically for the same platform where Blender is running (and usually for the same Blender version). If the plug-in has a .dll extension it is intended to be used on Windows; if it has a .so extension then it is compiled to run on Linux.

Fortunately, plug-ins are usually distributed in both .dll and .so forms.  For a good repository of Blender binary plug-ins, take a look at http://www.blender3d.org/cms/Resources.181.0.html#569

Also, some binary plug-ins are distributed with Blender, they are stored inside the "plugins" directory where you extracted Blender. The trick is that they are not compiled yet.  Just go into that directory and type make; everything else goes automatically from there. (of course you need to have gcc and make installed on your system, but those two are practically omnipresent on all distros).  (CAUTION! SuSE Linux 9.1 Personal Edition does not include compilers!)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
INSTALLING

* Do I need root access to install Blender?

No. If you install Blender under your home directory it will run just fine.  

However, just like with any Linux program, installing the needed dependencies might (as in "could happen but is not sure") need root access.

* Why there isn't an automated installer?

Because the install process is so easy that even a 2-year-old kid could do it. 

Besides, distro makers sometimes make funky decisions about where to locate files on their Linux version. So, to be safe, a manual install is the best choice (remember that I said it is a really easy process).

* How do I install Blender on my Linux system?

Short answer: the file you downloaded is a compressed folder, just uncompress it and run the blender executable from that directory. 

Long answer: (not fully written, in the meantime read  http://www.blender.org/modules/documentation/htmlI/c217.html )

* Why are hotkeys not working the way they should?

Most window manager programs trap user's key events and analyze them before sending them to the running program.  If the pressed hotkey is already assigned on the window manager it will never make it into the running program. 

In other words, if you have a particular keyboard combination defined on your window manager, and Blender uses that same keyboard combination as a hotkey, the one defined on the window manager will prevail.  KDE's window manager default configuration is known to have more than a few collisions with Blender's hotkeys. 

Until  the time comes when all Blender hotkeys are user configurable, your only two choices are to go into your Window Manger configuration and disable or re-direct the offending hotkey; or to try to substitute the troublemaker hotkey with its GUI counterpart (which is not always feasible).

To access KDE's hotkey editor go into Control Center -> Regional Settings and Accessibility -> Keyboard Shortcuts.

A special note should be made about the ~ hotkey (the one that toggles all your layers on/off). If that hot key isn't working for you, the Window Manager is not the one to be blamed, but your keyboard configuration:

For some non-standard English configurations, that key is used as a modifier to input Latin characters, specially the  letter (ASCII codes 164 and 165) used often in the Spanish language (like in "Pia Colada"). On those keyboard configurations, the ~ key event isn't treated as a keystroke in itself, but like a modifier for the next key that you press.  Again, besides changing your keyboard configuration, there isn't much that could be done to fix it.

* What do these error messages mean?  
"Could not find platform independent libraries <prefix>" 
"Could not find platform dependent libraries <exec_prefix>" 
"Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]" 
"'import site' failed; use -v for traceback"
"sys_init:warning - no sitedirs added from site module."

Those error messages all point in the same direction: A proper Python installation could not be found by Blender.  Either you don't have Python installed, or you have an outdated version.  At the time of this writing, Blender uses Python 2.3.

The error is non fatal, meaning that Blender will still open and work, but you'll be in trouble if you try to run a script that requires Python functions not already provided by Blender (file import/export scripts are good candidates for that).

* How can I solve drawing errors in the interface?

Blender uses OpenGL for all widgets and buttons and menus. This means Blender won't run well on some configurations of X11/driver combinations, especially when optimized for 3D gaming speed. 

A common error is with using the SWCursor option with soft shadows, which can leave trails in Blender. Experiment with settings in your /etc/X11/XF86Config file, like these:

# NVidia specific options 
Option "NoLogo" "0" 
Option "SWCursor" "false" 
Option "HWCursor" "true" 
Option "CursorShadow" "true" 

Another error with cursors leaving trails can be solved by adding the following line to your .Xresources by typing in a terminal (it seems you need to set it per user, doesn't work as system resource): 

echo "Xcursor.core: 1" >> ~/.Xresources 

Blender also requires normal buffer swapping, not optimized for speed, but based on copying the back buffer contents to the front buffer. You can set this in XF86Config by disabling the optimized buffer flipping; 

Option "NoFlip" "1" 

* What does the error "Xlib: extension "GLX" missing on display ":0.0"" mean?

If you are getting this error, it means that the glx extension is not enabled in /etc/X11/XF86Config. 
GLX allows Blender to access your 3D card and draw to the screen, but some distributions ship with GLX disabled. 

It likely means that you just don't have OpenGL installed or properly configured on your system. (It is also a symptom that you should review your 3D card setup in general).

Unfortunately there isn't a easy answer on how to enable it, since it varies from distro to distro. 

As a general tip it can be said that most of the times a line that says "Load "glx"" within the Modules section of your XF86Config or xorg.conf file is involved. However, Your distro manual should point you in the right direction.

* What does the error about a missing libstdc++-libc6.1-1.so.2 means ?

This means that you need to install the C++ compatibility libraries. If you are on RedHat, that would be compat-libstdc++-*.rpm.

* What does "ERROR: File .blanguages not found" mean?

It means that at load time Blender was unable to find its locale translation files.  When you uncompressed the file where Blender is distributed, a small hidden directory called .blender was uncompressed as well.  Just copy or move that directory to your home directory and the error should go away.

While you might not be interested in using the international translation options, I'm sure that you would be interested in using the many scripts that are distributed with Blender. Those scripts are stored inside .blender as well, so by copying that directory to your home directory you will solve two issues at the same time.

* Animating an empty scene crashes Blender

Before starting Blender export SDL_AUDIODRIVER: 

$ export SDL_AUDIODRIVER=dma 
$ blender 

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 MISCELLANIES / MORE INFORMATION

* What about scaling up?

If you are thinking about implementing Blender on a large scale, then you should know that there are renderfarm solutions already available.

At the inside of the Blender Foundation there is ongoing work to develop  network rendering capabilities, more details can be  found at   http://projects.blender.org/softwaremap/trove_list.php?form_cat=150

Outside the Blender Foundation, there is DrQueue (a Linux, Irix and OSX based GLP network rendering tool). It is freely available at http://www.drqueue.org/  and   http://projects.blender.org/projects/drqueue. At the time of this writing it supports Blender, Maya, BMRT and Pixie (support for FreeBSD and Aqsis is being worked on).

Also, there is the Piovra renderfarm manager ( http://www.idstudio.it/piovra/ ), which is free and with many features. More information and performance tips about Piovra, written by the developer, can be seen at http://www.cgtalk.com/showthread.php?t=150501&page=1&pp=15 (English) and http://www.blender.it/modules.php?name=Forums&file=viewtopic&topic=1186&forum=15&start=80 (Italian).

In addition, Render Planet ( https://renderplanet.com/ ) is offering both paid and free renderfarm services for Blender, Maya and Lightwave users.

When it comes to project management, Blender has built-in data linking and sharing capabilities that make it easier for larger groups to collaborate on a single project. Besides that, users have reported success by using the Makefile system to manage complex projects involving large animations. More information about that particular subject can be found at http://www.cgtalk.com/showthread.php?t=155978 .

NOTICE: The Blender Foundation doesn't endorse or sponsor the DrQueue, Piovra, or the Render Planet products (even though DrQ does have a projects.blender.org domain), they are included in this FAQ for the sake of completeness.

* Where do I find more information?

On the Internet:

http://www.blender3d.com/
http://www.blender.org/
http://www.elysiun.com/
http://www.cgtalk.com/forumdisplay.php?f=91

The Internet is the preferred way for getting more information related to Blender, as well as to participate in the user communities and stay tuned with the latest developments.

Through face-to-face interaction:

Each year, the official Blender Conference is held in Amsterdam, usually around the end of October, where many of the community members gather to discuss new development proposals, to hear seminars given by famous community members and people involved in the CG industry who are putting Blender to good use, among others' activities. Also, there are the annual Blender Art Festival and the Suzanne Awards Ceremony where the most outstanding artworks and development contributions are recognized.

At the same time that the official Conference is taking place, smaller conferences and informal get-togethers take place around the globe, organized by volunteer community members.

During Siggraph, each year small BOF sections are programmed, as well as information stands on the expo floor.

Through books:

About once a year, the Blender Foundation releases a new documentation oriented book related to Blender. By buying one of those books you help finance the Blender Foundation. 

Other Blender books, not released by the BF, are available through major bookstores such as Barnes & Noble and Amazon. Besides English language, there are German, Italian and Japanese books available.

* I have some contributions for this document, how do contact the FAQ maintainer?

That would be me, Juan J. Pea M. (also known as Apollux). You can usually catch me around the forums mentioned on the previous answer, or you could reach me by e-mail me on jjulio.pena at verizon.net.do (just substitute the "at" with the @ symbol, and no empty spaces in between).

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Thanks for taking the time to read this document. This FAQ was last updated on December 11th, 2004.

* The FAQ author would like to thank the many people that has contributed, in various forms, to this document.