General functional requirements

BLENDER USERS

  • Users only have to unpack the download file, and should be able to run immediately without root access to a system. We provide a simple checklist for them to detect the minimum requirements of their system.
  • installation files for Blender - whether libs or data - always reside either in the installation directory, or in $HOME/.blender/. Unless the OS itself has other conventions for it.
  • an additional (optional) installer only takes care of upacking/removing Blender and integration with a desktop system, like icons and filetype assignments. Installers will not overwrite libraries!

BLENDER DEVELOPERS

  • Blender coders can be assumed to have root access to their system, but required installation of system tools will be restricted to 'make', gcc, etc. A shortlist for that - including minimum versions - will be provided.
  • A distinction is made between 'system' libraries, and 'external Blender' libraries. The first category is libc etc. but also includes OpenGL, the second is part of the Blender CVS lib/ checkout; including python, freetype, openal, etc etc.
  • manually, a developer can force linking to 'external Blender' libs at other locations.
  • for a release, 'system' libraries will be linked dynamically, 'external Blender' libraries static. Unless the OS doesn't provide that...

Blender 2.4x library dependencies

OS Part of the OS* Static Dynamic Installation remarks
Linux, FreeBSD, Solaris, Irix gettext, OpenGL, sdl Freetype2, FTGL, Python 2.3.   Static Linux versions have OpenGL compiled in
OS X OpenGL, Quicktime gettext, freetype2, FTGL, Python 2.3, SDL    
Windows OpenGL, Quicktime, SDL Freetype2, FTGL gnu_gettext.dll, Python23.dll  

Blender 2.4x external help files

File What How  
.B.blend default start file and user prefs created with first run  
.Blog last saved file automatically after every save  
.Bfs List of preference directories added to the fileselect menu need manual update  
.Bfont Startup adobe font for 3d text builtin  
.Bbip Help file for image selector    
BPymenus File that represents the menu structure for included scripts created with first run and updated manually  
.Blanguages File that describes which languages are available    
.Bfont.ttf Startup freetype font for interface (not 3d text) note: this will change to builtin  
locale/ directory with localisation files for interface translation with setup  
scripts/ directory for 'integrated' python scripts with setup and manual additions  

All above mentioned files (table 2) are found in the directory .blender/. Where this directory resides is dependent on your OS and settings.

 

Used terms

  • $HOME The home directory for the user. On Unix-type OSes and OS X this is the home directory of the user pointed at with $HOME, on Windows it is %HOME% if defined.
  • $EXEPATH The directory the Blender executable is installed in, for OS X this is the directory in blender.app/Contents/Resources/

 

UNIX-type OSes

 

.blender is first searched at $HOME/.blender/, if that doesn't exist $EXEPATH/.blender/ will be searched.

 

OS X

 

.blender is first searched at $HOME/.blender/, otherwise blender.app/Contents/Resources/.blender/.

 

 

Windows

 

Windows will first search for %HOME%/.blender/, and if that doesn't exist it'll look for $EXEPATH/.blender/. If both don't exist Blender will look for the hard-coded user/Application Data/.blender directory, which won't take in account localised pathnames. The last directory is a mere fall-back, and users are encouraged to move their files from old installes to either %HOME%/.blender/ or $EXEPATH/.blender/.