Build-Blender-VM

Материал из Home Wiki
Перейти к навигации Перейти к поиску

Попытка 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