讓Blender小于200MB?源碼編譯選項記錄
????Blender源碼編譯其實并不是一件我們很關心的事情。但是同樣記錄于此。
開發(fā)工具要求
Subversion,?Git,?CMake?and?Visual?Studio?must?all?be?installed.
● Visual Studio?https://visualstudio.microsoft.com/
????○?(free,?be?sure?to?install?the?'Desktop?Development?with?C++'?workload)
????○?注意:2019版本需要大于16.9.16,2022版本需要?17.7版本以上
●?Install?a?Subversion?client,?such?as?https://tortoisesvn.net/downloads.html
????○?In?the?installer,?enable?Command?Line?Client?Tools.
●?Git??https://gitforwindows.org/
????○?In?the?installer,?choose?to?add?Git?to?your?PATH?to?ensure?make?update?can?correctly?function.
●?Cmake??https://cmake.org/
????○?In?the?installer?set?the?system?path?option?to?Add?CMake?to?the?system?PATH?for?all?users
具體編譯過程參考:https://zhuanlan.zhihu.com/p/412454577
與編譯相關的部分
build_files
在build_files/cmake/config?內有一些預設的cmake配置文件,里面也有使用示例。我們通過使用不同的配置文件,可以做到編譯不同版本的輸出。

默認提供了7種不同的配置。打開每一個cmake,都可以看到里面對blender的模塊進行了開關選擇。比如對于?blender_development.cmake,?內部的結構如下圖所示

如果我們想要針對性的編譯特定功能的blender,那么選擇默認的7個中的一個,或者我們自己加一個cmake,就可以做到對blender指定模塊的編譯,同時還能用blender的核心功能。
對于windows平臺,在build_files/windows?內有一個?parse_arguments.cmd?文件,這個文件被?主目錄下的?make.bat?調用。

而我們在編譯源碼時,一般就在主目錄下以?make?+?[?配置參數(shù)?]?的形式使用。比如對于編譯blender全部功能的版本,則使用
????make?full
對于編譯headless的版本,則使用
????make?headless
不同配置的參數(shù)列表,可以直接看?parse_arguments.cmd?內的代碼來獲知,如下圖所示,可知有debug、builddir、with_tests、full等等配置。這一些配置就表示在CmakeLists中打開不同的編譯開關。

選擇不同編譯選項的好處在于,blender的包大小可以得到明顯改善。官方的blender2.93解壓之后大概要占用600MB的空間,而Lite版本的源碼編譯之后,只需要占用180MB。