Build-Blender-VM
Попытка 2
Сборка с использованием предкомпилированных библиотек.
Исходный образ для ОС: ubuntu-22.04.5-live-server-amd64.iso
При сборке под GPU A100 самое важное ключики с либами под compute 8.0: -DCYCLES_CUDA_BINARIES_ARCH="sm_61;compute_61;sm_70;sm_75;compute_75;sm_80;compute_80;sm_86"
Основная проблема была в невозможности просто так загрузить файлы с git-lfs. Решено с помощью прокси.
/home/sasha/blender/pre-build-cuda.sh:
#!/bin/sh #wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin cp cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600 #wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb dpkg -i cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb cp /var/cuda-repo-ubuntu2204-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/ apt-get update apt-get -y install cuda
/home/sasha/blender/pre-build.sh:
#!/bin/sh ## https://developer.blender.org/docs/handbook/building_blender/linux/#__tabbed_1_2 apt install -y python3 git git-lfs apt install -y build-essential git git-lfs subversion cmake libx11-dev libxxf86vm-dev libxcursor-dev libxi-dev libxrandr-dev libxinerama-dev libegl-dev apt install -y libwayland-dev wayland-protocols libxkbcommon-dev libdbus-1-dev linux-libc-dev exit
/home/sasha/blender/run-blender.sh:
#!/bin/bash #rm -rf ./build-cmake mkdir ./build-cmake cd ./build-cmake cmake ../blender -DWITH_INSTALL_PORTABLE=ON \ -DWITH_CYCLES_CUDA_BINARIES=ON \ -DWITH_LIBS_PRECOMPILED=ON \ -DCYCLES_CUDA_BINARIES_ARCH="sm_61;compute_61;sm_70;sm_75;compute_75;sm_80;compute_80;sm_86" #make package
mkdir ~/blender-git cd ~/blender-git export ALL_PROXY=socks5://192.168.0.76:9999 export HTTP_PROXY=socks5://192.168.0.76:9999 export HTTPS_PROXY=socks5://192.168.0.76:9999 cd ~/blender-git/blender # Берём проект как есть git clone https://projects.blender.org/blender/blender.git cd blender # Берем релизную версию, т.к. только под них собраны либы, не знаю получится ли под конкретный тэг или коммит использовать git checkout blender-v4.2-release # Скрипт, который будет загружать бинарники (предкомпилированные либы) GIT_CURL_VERBOSE=1 GIT_TRANSFER_TRACE=1 ./build_files/utils/make_update.py --use-linux-libraries cd ~/blender-git /home/sasha/blender/run-blender.sh cd ./build-cmake make -j8 make package
Чтобы собрать tgz: make package
Результат в папке ~/blender-git/build-cmake/blender-4.2.7-git20250304.f12c49eec802-x86_64.tar.gz
Попытка 1 (не рабочая сборка)
! Не удачная сборка - либы остаются как динамические зависимости и не включены в сборку
Ставим vbox с ubuntu-22.04 server minimal
sudo apt install python3.11-dev
sudo apt install python3.11-full
sudo apt install python3-pip
Качаем openvdb
git clone https://github.com/AcademySoftwareFoundation/openvdb.git
cd openvdb
git checkout v8.2.0
mkdir build
cd build
cmake ..
make -j4
make install
Качаем OpenimageIO
Запускаем скрипт установки
OpenImageIO$ ./src/build-scripts/gh-installdeps.bash
mkdir ./openimageio-cmake
cd ./openimageio-cmake
cmake -B build -S ../OpenImageIO
сmake --build build --target package
sudo ./OpenImageIO-2.5.18-Linux-x86_64.sh --prefix=/usr --exclude-subdir
git clone https://github.com/AcademySoftwareFoundation/OpenColorIO.git
cd OpenColorIO
git checkout v2.3.2
mkdir ./opencolorio-cmake
cd ./opencolorio-cmake
git checkout v2.3.2
cmake -B build -S ../OpenColorIO/
cmake --build build --target install
sudo cmake --build build --target install
fftw-3.3.10$ ./configure --enable-threads --enable-openmp