minimum files to build blender

hi … how are you?

I have two new questions:

  1. in the next image, which are the minimum “class” that I have to select in order to built blender???


  1. where I can find information about all “with_” classes and the result of each on in the final compilation blender???

thanks

Diego

I’m not aware of a written article detailing the particulars of each option.

Here is a printout of the same list of CMake options with help strings (as generated by ‘cmake -LH <blender_source_dir>’ on my Mac):


// Path to a library.
3DCONNEXION_CLIENT_FRAMEWORK:FILEPATH=3DCONNEXION_CLIENT_FRAMEWORK-NOTFOUND


// Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
CMAKE_BUILD_TYPE:STRING=Release


// Install path prefix, prepended onto install directories.
CMAKE_INSTALL_PREFIX:PATH=/usr/local


// Choose the architecture you want to build Blender for: i386, x86_64 or ppc
CMAKE_OSX_ARCHITECTURES:STRING=x86_64


// 
CMAKE_OSX_DEPLOYMENT_TARGET:STRING=10.6


// 
CMAKE_OSX_SYSROOT:PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk


// Path to a file.
PYTHON_NUMPY_PATH:PATH=PYTHON_NUMPY_PATH-NOTFOUND


// Enable features depending on boost
WITH_BOOST:BOOL=ON


// Include extra build details (only disable for development & faster builds)
WITH_BUILDINFO:BOOL=ON


// Enable Bullet (Physics Engine)
WITH_BULLET:BOOL=ON


// Enable Blenders own AVI file support (raw/jpeg)
WITH_CODEC_AVI:BOOL=ON


// Enable FFMPeg Support (http://ffmpeg.org)
WITH_CODEC_FFMPEG:BOOL=OFF


// Enable Quicktime Support
WITH_CODEC_QUICKTIME:BOOL=ON


// Enable libsndfile Support (http://www.mega-nerd.com/libsndfile)
WITH_CODEC_SNDFILE:BOOL=OFF


// Enable the tile based nodal compositor
WITH_COMPOSITOR:BOOL=ON


// Enable cycles Render Engine
WITH_CYCLES:BOOL=ON


// Build cycles CUDA binaries
WITH_CYCLES_CUDA_BINARIES:BOOL=OFF


// Build Cycles with OSL support
WITH_CYCLES_OSL:BOOL=OFF


// Build cycles standalone application
WITH_CYCLES_STANDALONE:BOOL=OFF


// Build cycles standalone with GUI
WITH_CYCLES_STANDALONE_GUI:BOOL=OFF


// Enable FFTW3 support (Used for smoke and audio effects)
WITH_FFTW3:BOOL=ON


// Enable Freestyle (advanced edges rendering)
WITH_FREESTYLE:BOOL=ON


// Enable Game Engine
WITH_GAMEENGINE:BOOL=ON


// Enable ITASC IK solver (only disable for development & for incompatible C++ compilers)
WITH_IK_ITASC:BOOL=ON


// Enable Legacy IK solver (only disable for development)
WITH_IK_SOLVER:BOOL=ON


// Enable CINEON and DPX Image Support
WITH_IMAGE_CINEON:BOOL=ON


// Enable DDS Image Support
WITH_IMAGE_DDS:BOOL=ON


// Enable image FrameServer Support for rendering
WITH_IMAGE_FRAMESERVER:BOOL=ON


// Enable HDR Image Support
WITH_IMAGE_HDR:BOOL=ON


// Enable OpenEXR Support (http://www.openexr.com)
WITH_IMAGE_OPENEXR:BOOL=ON


// Enable OpenJpeg Support (http://www.openjpeg.org)
WITH_IMAGE_OPENJPEG:BOOL=ON


// Enable RedCode Image Support
WITH_IMAGE_REDCODE:BOOL=OFF


// Enable LibTIFF Support
WITH_IMAGE_TIFF:BOOL=ON


// Enable NDOF input devices (SpaceNavigator and friends)
WITH_INPUT_NDOF:BOOL=ON


// Enable I18N (International fonts and text)
WITH_INTERNATIONAL:BOOL=ON


// Enable Jack Support (http://www.jackaudio.org)
WITH_JACK:BOOL=OFF


// Enable libmv structure from motion library
WITH_LIBMV:BOOL=ON


// Use 10.5 libs
WITH_LIBS10.5:BOOL=ON


// Use LLVM
WITH_LLVM:BOOL=OFF


// Enable best LZMA compression, (used for pointcache)
WITH_LZMA:BOOL=ON


// Enable fast LZO compression (used for pointcache)
WITH_LZO:BOOL=ON


// Enable Boolean Modifier
WITH_MOD_BOOLEAN:BOOL=ON


// Enable Elbeem Modifier (Fluid Simulation)
WITH_MOD_FLUID:BOOL=ON


// Enable Ocean Modifier
WITH_MOD_OCEANSIM:BOOL=OFF


// Enable Remesh Modifier
WITH_MOD_REMESH:BOOL=ON


// Enable Smoke Modifier (Smoke Simulation)
WITH_MOD_SMOKE:BOOL=ON


// Enable OpenAL Support (http://www.openal.org)
WITH_OPENAL:BOOL=ON


// Enable OpenCollada Support (http://www.opencollada.org)
WITH_OPENCOLLADA:BOOL=ON


// Enable OpenColorIO color management
WITH_OPENCOLORIO:BOOL=ON


// Enable OpenImageIO Support (http://www.openimageio.org)
WITH_OPENIMAGEIO:BOOL=OFF


// Enable OpenMP (has to be supported by the compiler)
WITH_OPENMP:BOOL=OFF


// Enable use of Open Numerical Library
WITH_OPENNL:BOOL=ON


// Build Player
WITH_PLAYER:BOOL=OFF


// Enable building using the Python available in the framework (OSX only)
WITH_PYTHON_FRAMEWORK:BOOL=OFF


// Copy system python into the blender install folder
WITH_PYTHON_INSTALL:BOOL=ON


// Copy system numpy into the blender install folder
WITH_PYTHON_INSTALL_NUMPY:BOOL=ON


// Enable building as a python module which runs without a user interface, like running regular blender in background mode (experimental, only enable for development)
WITH_PYTHON_MODULE:BOOL=OFF


// Enable internal API error checking to track invalid data to prevent crash on access (at the expense of some effeciency, only enable for development).
WITH_PYTHON_SAFETY:BOOL=OFF


// Enable use of SIMD (SSE) optimizations for the raytracer
WITH_RAYOPTIMIZATION:BOOL=ON


// Enable SDL for sound and joystick support
WITH_SDL:BOOL=ON


// Use the operating systems OpenJPEG library
WITH_SYSTEM_OPENJPEG:BOOL=OFF



Ideally, sticking with the defaults should be OK, as long as you use the precompiled external libraries branch provided by the Blender Foundation: https://svn.blender.org/svnroot/bf-blender/trunk/lib/

Most of the options should be self-explaining, granted you know the names of libs, frameworks, formats etc.

But what side-effects an option can have (especially if disabled) should really be documented somewhere.

Are there any options in particular you wonder what they are for?

hi…

I only want:

freestyle + Blender Render (save in png only) + compositor + material + compositor + scenes + light

also, I want to know how delet some tools… for example if I want to delet “inset option” … only delete that in the Virtual studio 9??

Thanks

Diego

why would you remove features from the source???
And no, you can’t just delete the files.
Why not edit the layout scripts to hide inset in panels/menus?

Regarding the build options:
Those are OPTIONS, so any should be optional.

Hi
I want to remove for 2 reasons

  1. because I don’t use a lot features…!!!
  2. I want to know to do that
    Hide the features in the layout scripts are a good option, but the code still in the PC… with the bytes in hard drive … and I have a lot of tools that I never use

the building option: I can check that, but, when I built blender select and unselected options appear :frowning:

best

Diego

  1. Customizing the layout scripts is your best option

  2. Harddrives store multiple TB nowadays, a complete Blender installation is less than 200 MB (=0.00019 TB), why do you care about +/- 50 MB?

HI AGAIN

  1. umm some tutorial to learn to custom any blender layout script???

  2. HI… I think this is a really purpose of a free and opensource code… even if is lightweight like blender… also I see that blender is growing and his weight too… but I have never used or will use many of his tool… then… why I need that in my pc if I can remove that?

thanks

Diego

The Blender wiki has a nice article on the various ways Blender can be extended/modified with Python: http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts. In particular, look at the Python scripts in ‘<Blender_program_files>/<Blender_version>/scripts/bl_ui’. These are responsible for drawing individual panels, so you can comment out the code for the various ‘def draw():’ routines.

Although, I’m not sure it will accomplish what you’re after. Eliminating built-in features from Blender will require forking its entire codebase and re-arranging its data model (by editing the DNA subsystem). The codebase has numerous forward-declarations, which means you have to either substitute in stub-functions or refactor the entire codebase to remove calls to the functionality you wish to remove. Undeniably an arduous task, and difficult to merge future updates from the Blender Foundation. Though Blender is indeed open-source, and it can be done :yes:

Interface tutorial:
http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Interface

indeed open-source, and it can be done

Yep, but why spend time to remove features? It’s really not that simple for everything that isn’t available as build option.

I think this is a really purpose of a free and opensource code

I don’t think it’s the purpose of free and opensource code projects that users build them theirselves… You would usually get the binaries and be happy, unless you wanna patch in features, which aren’t available and not going to be included in any available build.