Building Doom 3 BFG Edition From Source (Part 1)


Hey gang, recently we wrote about the availability of Doom 3 BFG Edition for Linux, which is awesome!  But what good is a bunch of source code if you don’t have it in a compiled, playable form?  That’s what we’re here for.  We are going to show you how to successful build the latest sources for Doom 3 BFG Edition in Linux, and hopefully — you’ll know what I mean by hopefully soon — be able to play what only Windows users have been able enjoy, natively in Linux.

This guide is short and sweet — and painless.  I was able to build Doom 3 BFG Edition without complaint in Ubuntu 12.10, but given the dependencies, you might be able to get away with a successful build on Ubuntu 10.04 if you so choose.  So, let’s begin then.

Get Dependencies

First, you’ll need cmake, some SDL goodies and OpenAL.  According to GIT, Doom 3 BFG Edition is compatible with SDL v2, which purportedly improves input and sound considerably.  At the time of this writing only SDL 1.2 is available in the Ubuntu repositories (and has been for years), so we skipped that part.  We’re guessing SDL 1.2 can handle an 8-year old game without too much fuss.  So, we did this:

sudo apt-get install cmake libsdl1.2-dev libopenal-dev

Once your dependencies are installed, you’ll get to choose how you want to proceed with the next step. You can either use GIT to check out the sources, or you can download the zip file.  We recommend that you take the easy route and check the files out using GIT.  Here’s how.

Install GIT

sudo apt-get install git

Use GIT to check out the sources.  We made a temporary directory to work in first.

mkdir ~/bfg
cd ~/bfg

git clone

If everything went well, you should have a folder called “RBDOOM-3-BFG” inside of /bfg.  Now, let’s go into it and build the game!

cd neo
sudo ./
cd ../build
sudo make

Congratulations!  You’ve just built Doom 3 BFG for Linux.  Onlt, you’re probably not going to be able to play it unless you have at one point purchased the game on Steam.  Specifically, Steam for Windows.  Unfortunately, the game data for Doom 3 BFG Edition is not the same game data that came with your retail installation disc.  The game data must be manually extracted from the install folder and placed in the appropriate spot on your Linux filesystem.  I do not own BFG Edition, so I am unable to do this, but I am willing to buy a copy on Steam so that I can get the data and continue this guide later.  In the meantime, you’re pretty much set!





About Dean Howell

Aside from being a huge Sega fan, Dean is an LPIC certified Linux professional with over a decade experience. In addition to spending his free time burning through the classics from Sega and evangelizing open source, he's also the editor-in-cheif of The Powerbase.
  • josh sabboth

    Excellent tutorial, thanks a lot!!

  • Pingback: Links 11/1/2013: Linux 3.8 RC3, Firefox OS Phones | Techrights()

  • Christopher Hart

    here is the next thing you need to do after installing DOOM 3 BFG using steam through wine.

    1. You will need to look for where the file ‘Steam.exe’ is located. If I use my location as an example it will be ‘/media/Windows_D/Games/Steam’. Note that his may or may not be the same as your location as I said that I am using mine as an ‘example’.

    2. Once you have opened up the folder where ‘Steam.exe’ is located, open up the subfolder called ‘steamapps’. Then open up the subfolder ‘common’, then open up the folder ‘Doom 3 BFG Edition’.

    3. Copy JUST the folder ‘base’ to where you compiled the file ‘RBDoom3BFG’ script (as you should already have done this as it is in the main article), and there you have it. In fact you can also delete all the other files if you want.

    4. Now just run the RBDoom3BFG script and it will start up.

  • Mr.Pytagoras

    Just finished it yesterday.
    I have compiled it according to your guide, it was easy, then copied the base from the original steam game. My problem was that the intel HD 3000 graphics and current mesa don’t support opengl 3.2, so the game started but the screen was black, so I installed bumblebee and got the Nvidia card working, after that the game run just fine with optirun.