CURRENTLY NOT WORKING – WILL UPDATE WHEN FIXED. SOMETHING CHANGED.
Compile Firestorm on Ubuntu 22.04 (Focal Fossa) – A guide to compiling the Firestorm Viewer for Opensimulator. Official Firestorm guides are available on the Firestorm Wiki. This guide is currently identical to the official guide.
Compile Firestorm on Ubuntu 20.04- Folder structure
Let’s start with creating a sane directory tree structure. It can be different, however, if it is, the paths used further down will require updating to match. The structure used throughout is:
~/src └── firestorm ├── 3p-fmodstudio ├── fs-build-variables ├── phoenix-firestorm
The following lines assume you have no ‘src’ folder in your home directory. Adjust these instructions if this folder already exists.
cd ~/ mkdir src cd src mkdir firestorm cd firestorm
Compile Firestorm on Ubuntu 20.04 – Install The Dependencies
Installing the tools in the Focal Fossa Repository
This is slightly different from installing the dependencies on previous versions of Ubuntu. Package names for python2 have been changed and in some cases culled utterly. Additionally, GCC-6 and G++6 are no longer in the repositories for Focal Fossa.
sudo apt install libgl1-mesa-dev libglu1-mesa-dev libpulse-dev build-essential python3-pip git libssl-dev libxinerama-dev libxrandr-dev
“Cmake version 3.18 is required but not available in Ubuntu’s repositories, we have to build it from source”
wget https://github.com/Kitware/CMake/releases/download/v3.18.0/cmake-3.18.0.tar.gz tar xvf cmake-3.18.0.tar.gz cd cmake-3.18.0 ./bootstrap --parallel=$(nproc) --prefix=/usr && make -j $(nproc) && sudo make install
Start by creating a new folder inside ‘firestorm to download the python-pip file into. Once the folder is created moved into the folder, download the python-pip file and run it.
pip3 install --upgrade pip pip3 install git+https://bitbucket.org/lindenlab/autobuild.git#egg=autobuild
Download the Firestorm build variables
cd ~/src/firestorm git clone https://vcs.firestormviewer.org/fs-build-variables
Download and compile Fmod
cd ~/src/firestorm git clone https://vcs.firestormviewer.org/3p-libraries/3p-fmodstudio
Also, download Fmod studio API from the fmod website (you will need to make an account) and put the downloaded file into ‘~/src/firestorm/3p-fmodstudio’ folder. At the time of writing the latest version is 2.02.07.
Next edit the build-cmd.sh file (located inside the 3p-fmod) folder to match the version just download. The text below is a sample from the very top of the original at the time of writing
#!/usr/bin/env bash FMOD_DOWNLOAD_BASE="http://192.168.1.115/dev/pkg/" FMOD_ROOT_NAME="fmodstudioapi" FMOD_VERSION="20101" FMOD_VERSION_PRETTY="2.01.01"
This needs updating to match the version of Fmod Studio download, if that is 2.00.09 update accordingly. Additionally FMOD_DOWNLOAD_BASE=”http://192.168.1.115/dev/pkg/” needs changing to read as localhost.
FMOD_DOWNLOAD_BASE="localhost/dev/pkg/" FMOD_ROOT_NAME="fmodstudioapi" FMOD_VERSION="20207" FMOD_VERSION_PRETTY="2.02.07"
Save the changes and exit then compile 3p-fmod
cd ~/src/firestorm/3p-fmodstudio autobuild build -A 64 --all autobuild package -A 64
The output at the end will look similar to:
wrote /home/username/src/firestorm/3p-fmodstudio/fmodstudio-2.00.09-linux64-201822306.tar.bz2 md5 30c4b8096b6268617bcdc2f6ee6b36d3
The path will be different as it will match your system. Make a note of the information; it is needed later.
Compile Firestorm on Ubuntu 22.04 – Download and Compile the Firestorm source code
cd ~/src/firestorm git clone https://vcs.firestormviewer.org/phoenix-firestorm
A little preparation work
cd ~/src/firestorm/phoenix-firestorm source ../fs-build-variables/convenience Release export AUTOBUILD_VARIABLES_FILE=~/src/firstorm/fs-build-variables/variables
Now a couple of edits to the autobuild.xml, done with ‘autobuild installable edit’.
autobuild installables edit item platform=platform=linux64 hash= url=file////
It is easiest to prepare these in a text editor. Use the information at the end of the 3p-fmod compile to create a line similar to the one below (the hash will be different). If your system is using a different path that will also be different. Also please note that for a system where this has been set up before ‘edit’ use edit, like the example below; however for first-time setup, use add like the one below that.
autobuild installables edit fmodstudio platform=linux64 hash=30c4b8096b6268617bcdc2f6ee6b36d3 url=file:////~/src/firestorm/3p-fmodstudio/fmodstudio-2.02.05-linux64-220221229.tar.bz2
OR use ‘add’ if this is a first-time setup
autobuild installables add fmodstudio platform=linux64 hash=30c4b8096b6268617bcdc2f6ee6b36d3 url=file:////~/src/firestorm/3p-fmodstudio/fmodstudio-2.02.05-linux64-220221229.tar.bz2
Configure and then compile
If you wish to add a channel name to the viewer such as the name of your grid change “MyChannelName” to whatever you like.
autobuild configure -A 64 -c ReleaseFS_open -- --package --fmodstudio --chan MyChannelName --clean autobuild build -A 64 -c ReleaseFS_open --no-configure
A couple of possible variations on this are:
--no-opensim (removes OS support and you will get an SL viewer only) --avx (build with AVX CPU instruction support (should be safe as long as your CPU supports that instruction set)
Compile Firestorm on Ubuntu 22.04 – The packaged files
Copy and extract the tarball. Look inside the following folder:
Inside it, there will be a file which ends with .tar.xz. That file is the compressed tarball for the viewer. Don’t forget to subscribe to the RSS feed for more updates like this one.