10-15-2020, 02:34 PM
Compiling Firestorm
It's hard to find a proper tutorial on how to compile FireStorm with Ubuntu 20.04.
So I made this easy-to-follow tutorial, you should be able to follow this tutorial by simply copy & pasting the commands.
The "hardest" part is registering a FMOD account to download FMOD Engine. So we will start with that.
Download FMOD (Sound Engine)
Go to
Make sure to download FMOD in your Downloads folder, this will make it easier to follow this tutorial. Afterwards open the terminal (CTRL + ALT +T)
And you can start to copy and paste the commands below
Load FMOD Version into Environment VariablesImportant: Confirm if you can see the FMOD version displayed in your terminal after you press ENTER
Installing dependencies
This may take a couple of minutes to completeCreate and activate virtualenv with python 2.7
Ubuntu 20.04 comes with Python 3.x, Linden Labs autobuild system still requires Python 2.7. To not affect the stability of our system we will create a virtual environment for python 2.7After this you will see a py27_env prefix in your terminal which will make sure any executed Python scripts will be interpreted by Python 2.7 and not Python 3.x
Download and install Python PIP
*PIP is a Package Installer for PythonInstall Autobuild and llbase with PIPDownload Firestorm Source Code
This may take a couple of minutes to completeDownload Vorbis 1.3.3
Vorbis is a audio encoder and decoderDownload FMOD librariesConfigure FMOD Build ScriptLoad Autobuild VariablesBuild FMOD Engine Edit autobuild.xml with FMOD and VorbisStart Compiling
Because compiling takes a lot of time there is a time command added and speaker-test command to warn us when the build is ready.Ignore pipe errors, these are command line errors. If you get a Segmentation Fault just repeat the last autobuild command and the build should continue roughly at the last compiled file.
Also ignore the percentages after a Segmentation Fault occurs as they do not represent the actual progress anymore and the build will suddenly skip to a 100% once it's completed.
Install FireStorm
It's hard to find a proper tutorial on how to compile FireStorm with Ubuntu 20.04.
So I made this easy-to-follow tutorial, you should be able to follow this tutorial by simply copy & pasting the commands.
The "hardest" part is registering a FMOD account to download FMOD Engine. So we will start with that.
Download FMOD (Sound Engine)
Go to
[To see links please register here]
and register a account. You can use a disposable email service ([To see links please register here]
) if you don't like to give your personal mail.Make sure to download FMOD in your Downloads folder, this will make it easier to follow this tutorial. Afterwards open the terminal (CTRL + ALT +T)
And you can start to copy and paste the commands below
Load FMOD Version into Environment Variables
Code:
cd ~/Downloads
rm -rf fmodstudioapi*\(*\).tar.gz
#Extract FMOD Version
FMOD_LATEST=`ls fmodstudioapi*.tar.gz | perl -e 'print sort { length($a) <=> length($b) } <>' | tail -n 1`
FMOD_VERSION=`ls $FMOD_LATEST | grep -Eo '[0-9]{1,}'`
FMOD_VERSION_PRETTY=${FMOD_VERSION:0:1}.${FMOD_VERSION:1:2}.${FMOD_VERSION:3:4}
echo $FMOD_VERSION_PRETTY
Installing dependencies
This may take a couple of minutes to complete
Code:
sudo apt install --install-recommends make cmake curl doxygen gdb git python2 python2-dev python-all python3-virtualenv libalut-dev libapr1-dev libaprutil1-dev libatk1.0-dev libboost-all-dev libcairo2-dev libcollada-dom2.4-dp-dev libcurl4-openssl-dev libgl1-mesa-dev libglu1-mesa-dev libpython-all-dev libstdc++6 libx11-dev libxinerama-dev libxml2-dev libxrender-dev g++ gcc -y
Ubuntu 20.04 comes with Python 3.x, Linden Labs autobuild system still requires Python 2.7. To not affect the stability of our system we will create a virtual environment for python 2.7
Code:
cd ~
virtualenv -p /usr/bin/python2.7 py27_env
cd ~/py27_env
source bin/activate
Download and install Python PIP
*PIP is a Package Installer for Python
Code:
mkdir -p ~/src/modules/python-pip
cd ~/src/modules/python-pip
curl https://bootstrap.pypa.io/get-pip.py --output get-pip.py
python2 get-pip.py
Code:
pip install --upgrade pip
pip install autobuild
pip install llbase
This may take a couple of minutes to complete
Code:
cd ~/src
time git clone https://vcs.firestormviewer.org/phoenix-firestorm
Vorbis is a audio encoder and decoder
Code:
mkdir -p ~/src/modules/vorbis
cd ~/src/modules/vorbis
wget https://fireandicegrid.net/downloads/ogg_vorbis-1.3.3-1.3.6.200930615-linux64-200930615.tar.bz2
md5sum ogg_vorbis-1.3.3-1.3.6.200930615-linux64-200930615.tar.bz2
Code:
cd ~/src
git clone https://vcs.firestormviewer.org/3p-libraries/3p-fmodstudio
#Copy FMOD Engine to Lib directory
cp ~/Downloads/${FMOD_LATEST} ~/src/3p-fmodstudio
Code:
cd ~/src/3p-fmodstudio
file=build-cmd.sh
key=FMOD_DOWNLOAD_BASE= && value="file:///./"
line=`grep $key $file` && sed -i "s|${line}|${key}${value}|g" $file
key=FMOD_VERSION= && value=$FMOD_VERSION
line=`grep $key $file` && sed -i "s|${line}|${key}${value}|g" $file
key=FMOD_VERSION_PRETTY= && value=$FMOD_VERSION_PRETTY
line=`grep $key $file` && sed -i "s|${line}|${key}${value}|g" $file
Code:
cd ~/src
git clone https://vcs.firestormviewer.org/fs-build-variables
source ./fs-build-variables/convenience Release
export AUTOBUILD_VARIABLES_FILE=${HOME}/src/fs-build-variables/variables
Code:
cd ~/src/3p-fmodstudio
autobuild build -A 64 --all
OUTPUT=`autobuild package -A 64`
FMOD_URL=`echo $OUTPUT | cut -d ' ' -f 4`
FMOD_HASH=`echo $OUTPUT | cut -d ' ' -f 6`
Code:
cd ~/src/phoenix-firestorm
autobuild installables edit fmodstudio platform=linux64 hash=${FMOD_HASH} url=file://${FMOD_URL}
autobuild installables edit ogg_vorbis platform=linux64 hash=d888b4916006c28471b4f103854526c3 url=file://${HOME}/src/modules/vorbis/ogg_vorbis-1.3.3-1.3.6.200930615-linux64-200930615.tar.bz2 --debug
Because compiling takes a lot of time there is a time command added and speaker-test command to warn us when the build is ready.
Code:
cd ~/src/phoenix-firestorm
#May take a couple of minutes
echo "start time: " && date +%H:%M:%S \
&& time autobuild configure -A 64 -c ReleaseFS_open -- --package --fmodstudio --chan Release --clean -- debug --verbose \
&& speaker-test -t sine -f 1000 -l 1 -p 1 >> /dev/null
#May take longer than a hour
echo "start time: " && date +%H:%M:%S \
&& time autobuild build -A 64 -c ReleaseFS_open --no-configure -- debug --verbose \
&& speaker-test -t sine -f 1000 -l 1 -p 1 >> /dev/null
Also ignore the percentages after a Segmentation Fault occurs as they do not represent the actual progress anymore and the build will suddenly skip to a 100% once it's completed.
Install FireStorm
Code:
cd ~/src/phoenix-firestorm/build-linux-x86_64/newview
FS_TARBAL=`ls Phoenix*.tar.xz`
tar -vxf ${FS_TARBAL}
cd `basename ${FS_TARBAL} .tar.xz`
./install.sh
Add CryptoDog to your viewer:
[To see links please register here]