Help Compiling 1.12.1 on Debian 7.2 Wheezy

edited 2013 Nov 6 in Technical Support
Ok, so, Debian technically has a package in its repos for doomsday, but this version doesn't seems to include snowberry at all (no add-ons) and when I tried to run it with high-res textures it always crashed. Searching around, I discovered that older verisons of doomsday have some graphics issue with Intel HD devices, which I have, and newer versions fix this, so I downloaded the source code of 1.12.1.

Cmake doesn't work at all because the cmake *.txt file is missing from the source and a version I downloaded with wget tells me I have no version of CURL installed when I most certainly do.

The wiki says you can run qmake on Unix systems, so I installed qmake and did that. I now have a release folder full of yet even more folders with makefiles in them and nothing else, even though the qmake completed without error.

OK, seriously, I give up. Someone please, PLEASE help me, because doomsday doesn't seem to be an entity which enjoys being installed or run. I have included my distro version, flavour, and doomsday source version, but if you need any other information, please let me know. Thanks in advance to any brave souls who assist me.

EDIT: I also tried to download the *.deb file and install that. The installer says I cannot install it because I am missing a version of libc6 >= 2.14. As it turns out, my distro has 2.13 installed and it is considered 'up to date', so I cannot get a newer version, even though one aparently exists.

Comments

  • Jato wrote:
    OK, seriously, I give up. Someone please, PLEASE help me, because doomsday doesn't seem to be an entity which enjoys being installed or run. I have included my distro version, flavour, and doomsday source version, but if you need any other information, please let me know. Thanks in advance to any brave souls who assist me.
    Note that qmake's job is only to generate suitable makefiles for your system. After running qmake, you'll still need to run "make" and "make install".
    qmake -r ../doomsday/doomsday.pro PREFIX=/your/install/path CONFIG+=deng_notools
    make
    make install
    

    Make note of any missing dependencies when running qmake (e.g., XRandR and video mode extensions).

    Let me know if you encounter further problems.
    EDIT: I also tried to download the *.deb file and install that. The installer says I cannot install it because I am missing a version of libc6 >= 2.14. As it turns out, my distro has 2.13 installed and it is considered 'up to date', so I cannot get a newer version, even though one aparently exists.
    The prebuilt packages are for Ubuntu 12.04 LTS.
  • skyjake wrote:
    Note that qmake's job is only to generate suitable makefiles for your system. After running qmake, you'll still need to run "make" and "make install".
    qmake -r ../doomsday/doomsday.pro PREFIX=/your/install/path CONFIG+=deng_notools
    make
    make install
    

    Make note of any missing dependencies when running qmake (e.g., XRandR and video mode extensions).

    Let me know if you encounter further problems.
    Thank you very much for the quick reply! When running make after qmake, I get this error:
    "In file included from ../../doomsday/libdeng2/include/de/concurrency/guard.h:23:0,
    from ../../doomsday/libdeng2/include/de/Guard:1,
    from ../../doomsday/libdeng2/src/concurrency/guard.cpp:20:
    ../../doomsday/libdeng2/include/de/concurrency/../libdeng2.h:79:30: fatal error: QtCore/qglobal.h: No such file or directory
    compilation terminated."

    I have the libqtcore4 package installed on my machine, and when I ran qmake, I had no errors or dependency issues.
  • Check that you also have the "-dev" versions of QtCore, QtOpenGL, QtNetwork and QtGui installed, as the regular ones don't contain headers.
  • SkyJake,

    Thanks a ton for your help. I installed the remaining dependancies today and I have make installed doomsday successfully. Everything seems to be working fine now, thanks again!
  • Of course it couldn't be that easy. The snowberry launcher closes without loading anything. I found the execuatable in /your/install/path/ of my system (a directoy I'm guessing I was supposed to replace before compiling but was never mentioned in any of the installations guides) and executing that gave me some kind of generic app error. I'm uninstalling this. Hopefully at some point the debian package is updated past 1.9, but as it is now, I cannot run doomsday.
  • Note that you don't actually need Snowberry to run Doomsday. You can configure it and your game session entirely from the command line (Snowberry simply assists the user in this task). I personally don't use Snowberry at all in fact.
  • In my experience with Debian packages. Addons that are not essential to the main program (like snowberry) are usually separate packages, and marked as either suggested or recommended.

    Some programs are segmented even more. Wouldn't be uncommon to see doomsday split into:
    doomsday-libjdoom
    doomsday-libhexen
    doomsday-libheretic
    doomsday-snowberry
    doomsday-extra

    That way you would have similar install options as the windows installer. You would also have a "doomsday" metapackage, that simply depends on all the others. And maybe some -common or -base packages too.
  • In synaptic, I only have one option for doomsday packages, and it mostly works fine, it's just it's inability to run any kind of add-ons that was getting to me. The newest version compiles much differently for sure, but whereas the older package could just be run as doomsday from the command line, the newer version only compiles as a console command for snowberry with no command for just launching doomsday sans launcher which I found weird.
  • I repeat that Doomsday has no requirement to use a launcher, such as Snowberry. I don't know how the package maintainer(s) have configured things but on Windows, with the current 1.12.2 release, one can run Doomsday directly from the command line, like so:
    doomsday.exe -iwad c:/path/to/my/iwads/ -game doom2
    

    Or, with add-ons:
    doomsday.exe -iwad c:/path/to/my/iwads/ -game doom2 -file c:/path/to/my/addons/cooladdon.wad
    

    To make life easier, one can define their IWAD location using an environment path, thereby removing the need to specify it with -iwad on the command line.

    In fact, in modern Doomsday, once your IWADs can be found automatically (e.g., because you've specified the path as above) you can then simply run doomsday.exe with no arguments and choose which game you want to play from the Ringzero GUI. Add-ons can then be loaded at runtime from the in-game console. (This can be further simplified by mapping paths to your add-ons, also.)
  • EDIT: I noticed there is actaully another dialog box behind the initial error and this one states that I have an unsupported version of OpenGL. Doomsday requires 2.0 or greater, I have v1.4. My glx info:
    glxinfo | grep version
    server glx version string: 1.4
    client glx version string: 1.4
    GLX version: 1.4
    OpenGL version string: 1.4 Mesa 8.0.5
    

    So, I think the problem is just that my video card doesn't support the version of OpenGL Mesa needed to run Doomsday. Might be userful to other users at some point.



    I've recompiled doomsday without snowberry and I'm still getting the same error I was before, an AppMaterials error. Here is my doomsday.out:
    Application path: /usr/bin/doomsday
    Enabled log entry level: MESSAGE
    Created a new 32.0 MB memory volume.
    Executable: Doomsday Engine 1.12.1 (Stable 64-bit) Nov  5 2013 17:30:33.
    Command line (5 strings):
      0: doomsday
      1: -iwad
      2: /home/jared/zdoom/release/
      3: -game
      4: heretic
    Loading shader definitions from read-only archive entry "data/shaders.dei" at path "/data/
    doomsday.pk3/data/shaders.dei" (out of archive in read-only native file "(basedir)/data/
    doomsday.pk3")
    Initializing plugins...
      (id:1) libdehread
      (id:2) libdoom
      (id:3) libdoom64
      (id:4) libexample
      (id:5) libheretic
      (id:6) libhexen
      (id:7) libwadmapconverter
    I_InitJoystick: No joysticks found
    Starting GuiApp event loop...
    Canvas: Gained focus.
    Loop: Uncaught exception during loop iteration:
    [Error] (App_Materials) Materials collection not yet initialized
    ^ : Application terminated due to exception:
    ^ : Uncaught exception during loop iteration:
    ^ : [Error] (App_Materials) Materials collection not yet initialized
    ^ : 
    ^ : Restoring original display mode due to shutdown.
    ^ > Canvas: Lost focus.
    Loop: Shutting down the console...
    ^ : Z_Shutdown: Used 1 volumes, total 33554432 bytes.
    
Sign In or Register to comment.