Frictional Games Forum

Full Version: Segmentation fault after configuration screens [SOLVED]
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello. I ran into a somewhat nasty bug, which I solved myself. I've created this thread to share the fix with everyone. Note. This applies to the 64-bit Linux version. It may or may not apply to the 32-bit Linux version.

  1. The Frictional Games logo doesn't show up when you first start the game.
  2. The screens that give you an introduction to the game and ask you to adjust the gamma settings have no background images.
  3. The game segfaults after you click through the intro screens.
  4. You get a backtrace from GDB similar to the one below:
#0  0x00000000008585f0 in hpl::cGuiGfxElement::GetImageSize() ()
#1  0x00000000007a15cc in cLuxLoadScreenHandler::DrawMenuScreen() ()
#2  0x0000000000923abd in hpl::cUpdater::SetContainer(std::basic_string<char, std::char_traits<char>, std::allocator<char> >) ()
#3  0x00000000006dfddc in cLuxPreMenu::Update(float) ()
#4  0x0000000000924737 in hpl::cUpdater::RunMessage(hpl::eUpdateableMessage, float) ()
#5  0x000000000092548b in hpl::cEngine::Run() ()
#6  0x00000000006880e0 in hplMain(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#7  0x0000000000910aa9 in main ()
hpl.log entry:
ERROR: Texture manager Couldn't load bitmap '/home/alaran/games/Amnesia/graphics/general/menu_loading_screen.jpg'
ERROR: Could not load texture 'menu_loading_screen.jpg'!

Copy your system's IL library over the one in installDirectory/Amnesia/libs64/ In my case it was located at /usr/lib/ Once you do this, the game should start.
Actually that is not the best solution.. The issue there is that your system libJPEG is libjpeg8 which is not compatible with libjpeg62.. However your system symlinks libjpeg62 to your libjpeg8 implementation.. Thus lbIL won't open JPG files. A sideeffect of using a "newer" libIL is that some graphics do not load correctly due to a bug in libIL 1.7.8. you MUST use libIL 1.6.8 (Plus some patches to fix saving jpgs).

The version of lib + patches we are using is based on the Fedore 9 RPM package. (DeviL-1.6.8-0.15.rc2.fc9.src.rpm).

A cleaner solution is to simply symlink the included libjpeg62 into the main game libs folder (all the included libraries are in libs/all). In the upcoming patch I will simply force the use of the included libjpeg library.