輕鬆編譯 Blender 2.6 於 Fedora 64 位元平臺
基本上,照著 http://wiki.blender.org/index.php/Dev:2.5/Doc/Building_Blender/Linux/Fedora/Scons 的指示基本上就可以完成。
2012/12/22 根據 wiki 更新以下內容。
新的源碼中加入了一個指令稿,可以自動為 Deb 系與 RPM 系安裝相關軟體包並建置 blender,接著將所需相關軟體安裝至 /opt 資料夾下,如此大幅簡化建置與安裝相關步驟。
sudo yum install gcc-c++ subversion libpng-devel libjpeg-devel openjpeg openjpeg-devel libXi-devel openexr-devel openal-soft-devel freealut-devel SDL-devel fftw-devel libtiff-devel lame-libs freetype-devel jack-audio-connection-kit-devel ffmpeg-libs ffmpeg-devel xvidcore-devel libogg-devel faac-devel faad2-devel x264-devel libvorbis-devel libtheora-devel lame-devel libspnav-devel
sudo yum install python3 python3-devel python3-libs
cd svn
svn co https://svn.blender.org/svnroot/bf-blender/trunk/blender
接著依照指示輸入 sudo 密碼即可開始必要軟體下載、blender 所需相依軟體包之建置。
最後你會看到這段訊息:
If you're using SCons add this to your user-config:
BF_PYTHON = '/opt/lib/python-3.3'
BF_PYTHON_ABI_FLAGS = 'm'
BF_OIIO = '/opt/lib/oiio'
BF_BOOST = '/opt/lib/boost'
WITH_BF_BOOST = True
BF_FFMPEG = '/opt/lib/ffmpeg'
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice theora theoradec theoraenc vorbis vorbisenc vorbisfile x264 openjpeg'
由於我們打算以 SCons 來建置 blender,因此需要在源碼下載的根資料夾中設定 user-config.py 。
請在 ~/svn/blender 資料夾中手動建立個 user-config.py 檔,內容為上述訊息中冒號起的所有文字。
如果建置過程中,該指令稿有為您建置 boost lib。那麼請切換為 root 身份,並執行:
echo "/opt/lib/boost/lib" > /etc/ld.so.conf.d/boost.conf
ldconfig
接著就可以開始建置 blender 了。
PS1. libspnav-devel 軟體包未列明在安裝指令稿中,還需自行補安裝。
sudo yum install libspnav-devel
PS2. 切換為 root user,並執行:
cd /usr/include
ln -s ffmpeg/* .
python scons/scons.py -j 2
cd ~/svn/blender
ln -s ../install/linux2/blender ./blender
./blender
註:下列描述可能已經年代久遠,如果建置時沒有遇到問題,代表你不需要做下述修改。
不過,Fedora 的 gettextlib 命名上有個問題會讓編譯過程找不到,錯誤訊息為:
cannot find -lgettextlib
因此需要編輯這個檔案: where/to/blender/build_files/scons/config/linux-config.py
找到這一段,編輯成下列這樣
BF_GETTEXT = '/usr'
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
BF_GETTEXT_LIB = 'libgettextlib-0.18.1'
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib64'
#WITH_BF_GETTEXT_STATIC = True
#BF_GETTEXT_LIB_STATIC = '${BF_GETTEXT}/lib/libgettextlib.a'
其中 BF_GETTEXT_LIB 與 BF_GETTEXT_LIBPATH 這兩項是修改的地方。
接著編譯就完成了!
這樣就能一邊翻譯,一邊做出最新的 mo 檔丟進去界面操作看看!太棒了!
有興趣測試看看的人也可以跟我要測試用的 mo 檔,再回報給我翻譯上的建議。
======翻譯的代碼庫存取法=======
mkdir svn
cd svn
mkdir bf-translations
cd bf-translations
svn co https://svn.blender.org/svnroot/bf-translations/trunk
svn up
2012/12/22 根據 wiki 更新以下內容。
下載源碼與滿足相依關係
新的源碼中加入了一個指令稿,可以自動為 Deb 系與 RPM 系安裝相關軟體包並建置 blender,接著將所需相關軟體安裝至 /opt 資料夾下,如此大幅簡化建置與安裝相關步驟。
手動滿足軟體包相依性
但如果你還是偏好手動安裝的話你可以這樣做先滿足相依關係。sudo yum install gcc-c++ subversion libpng-devel libjpeg-devel openjpeg openjpeg-devel libXi-devel openexr-devel openal-soft-devel freealut-devel SDL-devel fftw-devel libtiff-devel lame-libs freetype-devel jack-audio-connection-kit-devel ffmpeg-libs ffmpeg-devel xvidcore-devel libogg-devel faac-devel faad2-devel x264-devel libvorbis-devel libtheora-devel lame-devel libspnav-devel
sudo yum install python3 python3-devel python3-libs
下載 blender 源碼
mkdir svncd svn
svn co https://svn.blender.org/svnroot/bf-blender/trunk/blender
自動滿足軟體包相依性並建置 (建議)
cd ~/svn/blender/build_files/build_environment/install_deps.sh接著依照指示輸入 sudo 密碼即可開始必要軟體下載、blender 所需相依軟體包之建置。
最後你會看到這段訊息:
If you're using SCons add this to your user-config:
BF_PYTHON = '/opt/lib/python-3.3'
BF_PYTHON_ABI_FLAGS = 'm'
BF_OIIO = '/opt/lib/oiio'
BF_BOOST = '/opt/lib/boost'
WITH_BF_BOOST = True
BF_FFMPEG = '/opt/lib/ffmpeg'
BF_FFMPEG_LIB = 'avformat avcodec swscale avutil avdevice theora theoradec theoraenc vorbis vorbisenc vorbisfile x264 openjpeg'
由於我們打算以 SCons 來建置 blender,因此需要在源碼下載的根資料夾中設定 user-config.py 。
請在 ~/svn/blender 資料夾中手動建立個 user-config.py 檔,內容為上述訊息中冒號起的所有文字。
如果建置過程中,該指令稿有為您建置 boost lib。那麼請切換為 root 身份,並執行:
echo "/opt/lib/boost/lib" > /etc/ld.so.conf.d/boost.conf
ldconfig
接著就可以開始建置 blender 了。
PS1. libspnav-devel 軟體包未列明在安裝指令稿中,還需自行補安裝。
sudo yum install libspnav-devel
PS2. 切換為 root user,並執行:
cd /usr/include
ln -s ffmpeg/* .
建置 Blender 與執行
cd blenderpython scons/scons.py -j 2
cd ~/svn/blender
ln -s ../install/linux2/blender ./blender
./blender
註:下列描述可能已經年代久遠,如果建置時沒有遇到問題,代表你不需要做下述修改。
不過,Fedora 的 gettextlib 命名上有個問題會讓編譯過程找不到,錯誤訊息為:
cannot find -lgettextlib
因此需要編輯這個檔案: where/to/blender/build_files/scons/config/linux-config.py
找到這一段,編輯成下列這樣
BF_GETTEXT = '/usr'
BF_GETTEXT_INC = '${BF_GETTEXT}/include'
BF_GETTEXT_LIB = 'libgettextlib-0.18.1'
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib64'
#WITH_BF_GETTEXT_STATIC = True
#BF_GETTEXT_LIB_STATIC = '${BF_GETTEXT}/lib/libgettextlib.a'
其中 BF_GETTEXT_LIB 與 BF_GETTEXT_LIBPATH 這兩項是修改的地方。
接著編譯就完成了!
這樣就能一邊翻譯,一邊做出最新的 mo 檔丟進去界面操作看看!太棒了!
有興趣測試看看的人也可以跟我要測試用的 mo 檔,再回報給我翻譯上的建議。
======翻譯的代碼庫存取法=======
mkdir svn
cd svn
mkdir bf-translations
cd bf-translations
svn co https://svn.blender.org/svnroot/bf-translations/trunk
svn up
留言
張貼留言