debianでのblenderビルドメモ
本家のbuild手順踏まえても、debian8系でうまくbuildしたblender起動できなかったのでメモ書きしておく。
OS/HW環境
以下の通りです。
murase@debian:~/blender-git/build/bin$ cat /etc/debian_version 8.2 murase@debian:~/blender-git/build/bin$ uname -a Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux
murase@debian:~/blender-git/build/bin$ lspci |grep VGA 05:00.0 VGA compatible controller: NVIDIA Corporation GF106 [GeForce GTS 450] (rev a1) murase@debian:~/blender-git/build/bin$ cat /proc/cpuinfo |grep AMD vendor_id : AuthenticAMD model name : AMD Phenom(tm) II X6 1065T Processor ...
build to blender
で、基本は本家を参照。
で、本家の情報の通りbuildして、いざ実行しても、boostのいくつかの動的ライブラリで、以下リンクエラーとなりました。
boost1.5くらいが最新なので、1.49等を参照されてもこまるのですが、どこかhardcodingしてるんでしょうか?
murase@debian:~/blender-git/build/bin$ ./blender ./blender: error while loading shared libraries: libboost_filesystem.so.1.49.0: cannot open shared object file: No such file or directory murase@debian:~/blender-git/build/bin$ ldd blender linux-vdso.so.1 (0x00007fff60320000) libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f244b0cd000) ... liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f24436b0000) libjbig.so.0 => /usr/lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f24434a1000) libboost_filesystem.so.1.49.0 => not found libboost_regex.so.1.49.0 => not found libboost_system.so.1.49.0 => not found libboost_thread.so.1.49.0 => not found libssl.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f2443241000) libcrypto.so.1.0.0 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f2442e46000) ...
fix link error
仕方ないので、boost1.5系の対応するライブラリへのシンボリックリンクを作ってやりましたが、こんな解決方法でいいのでしょうかね?
sudo paco -lp blender_hotfix_to_dynamic_link_err "\ ln -s /usr/lib/x86_64-linux-gnu/libboost_filesystem.so /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.49.0;\ ln -s /usr/lib/x86_64-linux-gnu/libboost_regex.so /usr/lib/x86_64-linux-gnu/libboost_regex.so.1.49.0;\ ln -s /usr/lib/x86_64-linux-gnu/libboost_system.so /usr/lib/x86_64-linux-gnu/libboost_system.so.1.49.0;\ ln -s /usr/lib/x86_64-linux-gnu/libboost_thread.so /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.49.0"
result
はい、libboost1.5系を参照して、正常に起動するようになりました。終わり><
$ ldd blender linux-vdso.so.1 (0x00007fff111b8000) libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f35933bd000) ... libOpenImageIO.so.1.4 => /opt/lib/oiio/lib/libOpenImageIO.so.1.4 (0x00007f3591e3a000) libjpeg.so.62 => /usr/lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007f3591be3000) libboost_filesystem.so.1.55.0 => /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.55.0 (0x00007f35919cb000) libboost_regex.so.1.55.0 => /usr/lib/x86_64-linux-gnu/libboost_regex.so.1.55.0 (0x00007f35916b7000) libboost_system.so.1.55.0 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.55.0 (0x00007f35914b3000) libboost_thread.so.1.55.0 => /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0 (0x00007f3591298000) libboost_date_time.so.1.55.0 => /usr/lib/x86_64-linux-gnu/libboost_date_time.so.1.55.0 (0x00007f3591086000) libboost_locale.so.1.55.0 => /usr/lib/x86_64-linux-gnu/libboost_locale.so.1.55.0 (0x00007f3590d9c000) ...