GLSL 1.50 не поддерживается

Потратив значительное количество времени на это, я решил просто пойти и скомпилировать его в любом случае. Чтобы облегчить тем, кто захочет попробовать это в будущем, я подготовил небольшой (да, правый!) Скрипт Bash для автоматизации всего процесса.

Short version: если вы просто хотите, чтобы я дал вам команду для запуска, то вот это:

wget http://files.quickmediasolutions.com/install_o3d ; chmod 755 install_o3d ; ./install_o3d

Примечание: вам будет предложено ввести пароль root для установки некоторых пакетов. [!d4 ]

Скрипт может занять несколько минут (или даже до часа), но в конце вы должны получить пакет (или два) в /tmp/o3d/o3d_root/o3d/build/out/Debug/. Это может быть установлено для поддержки O3D.

Короткая версия: Google, похоже, не предоставляет предварительно скомпилированные двоичные файлы (которые я мог найти как минимум) поэтому я посетил эту страницу и получил инструкции по ее созданию и начал создавать скрипт Bash для выполнения действий.

Сначала скрипт гарантирует, что у вас есть правильные пакеты в вашей системе. Он также проверяет, предоставил ли вы путь в качестве параметра, который используется для хранения репозиториев (/tmp/o3d используется, если параметр не указан). Затем он проверяет depot_tools Google и добавляет его в PATH (но не постоянно). Затем сценарий использует gclient для извлечения всего кода из разных репозиториев (поверьте, он много загружает - например, более 500 МБ). К сожалению, файл DEPS в папке o3d_root/o3d, похоже, имеет неправильный номер версии для breakpad, поэтому мой скрипт исправляет его «на лету» и повторно синхронизирует.

Затем долгий и утомительный процесс начинается создание плагина. В зависимости от скорости вашей системы это может занять от 10 до 60 минут.

Когда процесс будет завершен, вы найдете пакеты в o3d_root/o3d/build/out/Debug/. Обратите внимание, что процесс сборки может сообщать об ошибке и останавливаться. Но, насколько я могу судить, ошибка может быть проигнорирована, поскольку пакеты уже построены в этой точке. Оттуда вы можете просто установить пакет.

Вот мой сценарий целиком:

#!/bin/bash

# check all dependencies
echo "Checking dependencies..."
echo "[Note: you may be prompted for your root password]"
sudo apt-get install python gcc g++ libxt-dev libgtk2.0-dev libgl1-mesa-dev libglib2.0-dev libglu1-mesa-dev libx11-dev fakeroot libnss3-dev libgconf2-dev libcurl4-gnutls-dev libgnome-keyring-dev libdbus-glib-1-dev subversion dpkg-dev build-essential debhelper cdbs

# check to see if a path was specified
if test $# -lt 1 ; then
  INSTALLPATH="/tmp/o3d"
  echo "No path specified, assuming '$INSTALLPATH'..."
else
  INSTALLPATH="$1"
fi

# make that directory
mkdir -p $INSTALLPATH
cd $INSTALLPATH

# checkout the depot_tools
echo "Checking out depot tools..."
svn co http://src.chromium.org/svn/trunk/tools/depot_tools

# export the path to these tools
export PATH="$PATH":`pwd`/depot_tools

mkdir o3d_root
cd o3d_root

# now download the code
echo "Downloading code..."
gclient config http://src.chromium.org/svn/trunk/o3d
gclient sync

# apply our patch to the DEPS file
echo "Applying patch to DEPS file..."
echo -e "13c13\n<   \"breakpad_rev\": \"604\",\n---\n>   \"breakpad_rev\": \"605\"," >DEPS.patch
patch o3d/DEPS DEPS.patch

# re-sync the code
echo "Re-syncing..."
gclient sync

# build it
echo "Building o3d plugin..."
cd o3d
./gypbuild

echo "Done!"
0
задан 16 September 2017 в 14:12

0 ответов

Другие вопросы по тегам:

Похожие вопросы: