Git: https://git.allthefallen.moe/lostorm/lostorm
(Mirror: https://gitlab.com/lostorm/lostorm)
Follow the official compilation instructions: fs_compiling_firestorm_linux / fs_compiling_firestorm_windows
Note: As of LOStorm 10, Python 3 is required instead of Python 2.7
Note: As of LOStorm 11, Python 3.7 or newer is required when following the official Firestorm instructions for Linux. On systems where Python 3.7 is not available, this can be worked around by substituting the following command when installing autobuild: pip3 install git+https://bitbucket.org/lindenlab/autobuild.git@v3.0.0#egg=autobuild.
Note: As of LOStorm 14, a minimum of Visual Studio 2022 (windows) or glibc 2.34 or later are required (linux), when using the included third-party dependencies.. Recommended Linux build platform is now Ubuntu 22.04 LTS using GCC 10 or GCC 11.
Note: As of LOStorm 15/16, a non-LTSC Visual Studio version released after February 2024 is required on Windows when using the included third-party dependencies. This moves the minimum requirements up to Windows 10.
Typical Windows build process (after dependencies are installed and setup -- reboot may be required to set environment variables):
One time: X:\> git clone http://.../lostorm X:\> git clone http://.../fs-build-variables X:\> cd lostorm Every time: X:\lostorm> set AUTOBUILD_VSVER=170 X:\lostorm> set AUTOBUILD_VARIABLES_FILE=X:\fs-build-variables\variables X:\lostorm> autobuild configure -v -A 64 -c ReleaseFS_open -- --package --openal -DLL_TESTS:BOOL=FALSE Then open build-vc170-64\Firestorm.sln in Visual Studio and build. Build result is located at build-vc170-64\newview\Release
(adjust version parameter based on Visual Studio version: VS2017 is version 150, VS2019 is 160 and VS2022 is 170)
These notes are only relevant to older versions of LOStorm. If building old versions be aware that you may need to use an era-appropriate snapshot of fs-build-variables.
Windows: Git4Windows' bash.exe should be in the PATH. Having multiple editions of Visual Studio installed together does not work unless you patch the file C:\Python38\Lib\site-packages\autobuild\autobuild_tool_source_environment.py (line 172):
LOStorm 11: Must only have Visual Studio 2017 installed. Visual Studio 2019 does not work.Historical notes
- VCINSTALLDIR = os.path.join(where, 'VC', 'Auxiliary', 'Build')
+ VCINSTALLDIR = "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Auxiliary\\Build"
(This no longer seems to be required)
(as of LOStorm 12, Visual Studio 2019 or 2022 should both work)
Typical Linux build process:
One time: ~$ git clone http://.../lostorm ~$ git clone http://.../fs-build-variables ~$ cd lostorm Every time: ~/lostorm$ export AUTOBUILD_VARIABLES_FILE=$HOME/fs-build-variables/variables ~/lostorm$ autobuild configure -v -A 64 -c ReleaseFS_open -- --package -DLL_TESTS:BOOL=FALSE -DUSE_OPENAL:BOOL=TRUE ~/lostorm$ nice ionice autobuild build -A 64 -c ReleaseFS_open Build result is located at build-linux-x86_64/newview/packaged
These notes are only relevant to older versions of LOStorm. If building old versions be aware that you may need to use an era-appropriate snapshot of fs-build-variables.
Note: Issue affecting LOStorm 11 / FS 6.6.8 builds on Linux: Edit the fs-build-variables/variables file and replace --std=gnu++14 with --std=gnu++17 if errors are encountered.
(as of LOStorm 12 this is no longer an issue)
You should use Ubuntu 16.04 (xenial) with GCC 5 specifically to build.
To create and use an Ubuntu 16.04 chroot from a Debian based system use these commands:
Download and enter Ubuntu chroot: $ sudo debootstrap --arch=amd64 xenial ./lostorm-build-root http://archive.ubuntu.com/ubuntu $ sudo chroot ./lostorm-build-root You are now operating within the Ubuntu chroot and can install the required packages: # apt install ... And create a user account to build with: # adduser build # su build $ git clone ... etc...
WARNING: Peak memory consumption will be ~1.5GB per CPU thread (e.g. 24GB of available memory required for 8 core / 16 thread CPU). Using swap or pagefile is OK.
WARNING: SL / FS build process downloads many dependencies as pre-compiled binaries over the internet. These cannot be vetted and may become unavailable and make building impossible. Substituting them with self-compiled versions is difficult.
WARNING: Care must be taken to ensure that custom builds are indistinguishable from official releases (matching release name, channel name, version number, revision number), otherwise there is a risk of being blocked or banned.