Announcement

Collapse
No announcement yet.

Getting Qrack to compile in Linux (Ubuntu 9.10) Video included!

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Debug

    Before you go to any trouble make sure the bug is reproduced on your end.
    Last edited by bluntz; 10-18-2010, 11:32 AM.
    WARNING
    May be too intense for some viewers.
    Stress Relief Device
    ....BANG HEAD HERE....
    ---------------------------
    .
    .
    .
    .
    .--------------------------

    Comment


    • #32
      Bug fixed

      Changing that stale map did the trick Rook ,hasnt crashed since!
      WARNING
      May be too intense for some viewers.
      Stress Relief Device
      ....BANG HEAD HERE....
      ---------------------------
      .
      .
      .
      .
      .--------------------------

      Comment


      • #33
        Compiling Newer Source

        [email protected]:~/Desktop/bild/qracksource21/source$ make release

        ** Release Build **
        Compiling >> cl_demo.c ...
        In file included from quakedef.h:244,
        from cl_demo.c:22:
        glquake.h:32:20: error: gl_ext.h: No such file or directory
        In file included from quakedef.h:244,
        from cl_demo.c:22:
        glquake.h:39: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �VID_GetCurrentMonitor�
        glquake.h:40: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �VID_GetCurrentMonitorInfo�
        glquake.h:41: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �prevMonitor�
        glquake.h:42: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �prevMonInfo�
        glquake.h:43: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �hCurrMon�
        glquake.h:44: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �currMonInfo�
        glquake.h:304: error: �glClientActiveTexture� redeclared as different kind of symbol
        /usr/include/GL/gl.h:1859: note: previous declaration of �glClientActiveTexture� was here
        make[1]: *** [release-build/cl_demo.o] Error 1
        make: [release] Error 2 (ignored)
        [email protected]:~/Desktop/bild/qracksource21/source$
        WARNING
        May be too intense for some viewers.
        Stress Relief Device
        ....BANG HEAD HERE....
        ---------------------------
        .
        .
        .
        .
        .--------------------------

        Comment


        • #34
          the get current monitor is code for _WIN32 u can #ifdef around that...

          gl_ext.h should have been in the zip /inc folder..
          www.quakeone.com/qrack | www.quakeone.com/cax| http://en.twitch.tv/sputnikutah

          Comment


          • #35
            Originally posted by bluntz View Post
            [email protected]:~/Desktop/bild/qracksource21/source$ make release

            ** Release Build **
            Compiling >> cl_demo.c ...
            In file included from quakedef.h:244,
            from cl_demo.c:22:
            glquake.h:32:20: error: gl_ext.h: No such file or directory
            In file included from quakedef.h:244,
            from cl_demo.c:22:
            glquake.h:39: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �VID_GetCurrentMonitor�
            glquake.h:40: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �VID_GetCurrentMonitorInfo�
            glquake.h:41: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �prevMonitor�
            glquake.h:42: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �prevMonInfo�
            glquake.h:43: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �hCurrMon�
            glquake.h:44: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �currMonInfo�
            glquake.h:304: error: �glClientActiveTexture� redeclared as different kind of symbol
            /usr/include/GL/gl.h:1859: note: previous declaration of �glClientActiveTexture� was here
            make[1]: *** [release-build/cl_demo.o] Error 1
            make: [release] Error 2 (ignored)
            [email protected]:~/Desktop/bild/qracksource21/source$
            I dunno how to help you there buddy, I'm just an average Linux user
            QuakeOne.com
            Quake One Resurrection

            QuakeOne.com/qrack
            Great Quake engine

            Qrack 1.60.1 Ubuntu Guide
            Get Qrack 1.60.1 running in Ubuntu!

            Comment


            • #36
              Swapping out gl_quake.h with 1.9 gl_quake.h fixes the missing file error.
              and gets a bit farther with
              [email protected]:~/Desktop/bild/qracksource21/source$ make release

              ** Release Build **
              Compiling >> cl_demo.c ...
              cl_demo.c: In function �CL_GetMessage�:
              cl_demo.c:251: warning: ignoring return value of �fread�, declared with attribute warn_unused_result
              Compiling >> cl_input.c ...
              Compiling >> cl_main.c ...
              Compiling >> cl_parse.c ...
              cl_parse.c: In function �CL_ParseServerInfo�:
              cl_parse.c:529: error: �FALSE� undeclared (first use in this function)
              cl_parse.c:529: error: (Each undeclared identifier is reported only once
              cl_parse.c:529: error: for each function it appears in.)
              cl_parse.c: At top level:
              cl_parse.c:1203: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �__int64�
              cl_parse.c: In function �GetMHz�:
              cl_parse.c:1207: error: �__int64� undeclared (first use in this function)
              cl_parse.c:1207: error: expected �;� before �q0�
              cl_parse.c:1209: error: �LARGE_INTEGER� undeclared (first use in this function)
              cl_parse.c:1209: error: expected expression before �)� token
              cl_parse.c:1211: error: expected expression before �)� token
              cl_parse.c:1212: error: �t0� undeclared (first use in this function)
              cl_parse.c:1216: error: expected expression before �)� token
              cl_parse.c:1217: error: �q1� undeclared (first use in this function)
              cl_parse.c:1217: error: �q0� undeclared (first use in this function)
              cl_parse.c:1217: error: �qfrq� undeclared (first use in this function)
              cl_parse.c:1221: error: expected expression before �)� token
              cl_parse.c:1222: error: �t1� undeclared (first use in this function)
              cl_parse.c: In function �GetMem�:
              cl_parse.c:1229: error: �MEMORYSTATUS� undeclared (first use in this function)
              cl_parse.c:1229: error: expected �;� before �ms�
              cl_parse.c:1230: error: �ms� undeclared (first use in this function)
              cl_parse.c: In function �CL_ParseString�:
              cl_parse.c:1296: error: expected �=�, �,�, �;�, �asm� or �__attribute__� before �mainwindow�
              cl_parse.c:1296: error: �mainwindow� undeclared (first use in this function)
              make[1]: *** [release-build/cl_parse.o] Error 1
              make: [release] Error 2 (ignored)
              [email protected]:~/Desktop/bild/qracksource21/source$
              Last edited by bluntz; 10-23-2010, 10:31 PM.
              WARNING
              May be too intense for some viewers.
              Stress Relief Device
              ....BANG HEAD HERE....
              ---------------------------
              .
              .
              .
              .
              .--------------------------

              Comment


              • #37
                ya that's adding more noodles to the bowl of spaghetti...

                Certain parts are Win32 specific, and Linux wont understand it. There needs to be more #ifdefs added to segregate windows code from linux.
                Maybe diff agains the 1.60 code an see parts that can be commented out.
                www.quakeone.com/qrack | www.quakeone.com/cax| http://en.twitch.tv/sputnikutah

                Comment


                • #38
                  Originally posted by bluntz View Post
                  I use this to run it . The condump command doesnt work and the
                  codec_capture doesnt either but kinda expected that.

                  I updated it from 160 to 190 using some files from the build release.
                  Nvidia 9400 gt 1024MB with 2.0 ghz Core 2 Duo 2gb ram
                  Ubuntu 10.04 LTS
                  I had to recover my box got hosed from a udev update dropping me into busybox with initramfs errors.
                  Care to share alittle more on how you did this?

                  I think I'm experiencing the same error L3r was talking about (post #13) where the console and menu will load but once I try to load a map the whole thing freezes (PC). and I have to hard-restart my PC... I can't get into a map now? Strange. I followed my own instructions.. Wonder whats going on here?
                  QuakeOne.com
                  Quake One Resurrection

                  QuakeOne.com/qrack
                  Great Quake engine

                  Qrack 1.60.1 Ubuntu Guide
                  Get Qrack 1.60.1 running in Ubuntu!

                  Comment


                  • #39
                    I replaced the files in 1.9 from 1.6 that gave errors during compile.
                    I think 3 were swapped out.
                    I know its not the right way to do it but it worked.
                    I am not a programmer so I can not correct the code.
                    I have extensive compiling experience though Since being a Linux user since RH 5.
                    2 things need to be done with windows files
                    1. usually the format is bad
                    with carriage returns and linebreaks,
                    the old way to fix that was dos2unix.
                    But its not in 10.4 its been replaced by fromdos
                    so I ran it first
                    find -type f -exec fromdos {} \;
                    2.The naming conventions need examining.
                    Normally the filenames will be lowercase but not always.
                    To be sure we must look at the include calls to see.some looked suspicious so I ran the lowercase script.
                    ./fixskins.sh
                    3. Also of concern was the environment so I coppied the libs and includes to the source dir just in case.

                    #note I did not apply patch. built i386 first.
                    Last edited by bluntz; 04-13-2012, 05:49 PM.
                    WARNING
                    May be too intense for some viewers.
                    Stress Relief Device
                    ....BANG HEAD HERE....
                    ---------------------------
                    .
                    .
                    .
                    .
                    .--------------------------

                    Comment


                    • #40
                      Originally posted by Lerster View Post
                      After extracking the qrack source, and patching the source files like lxndr showed how to do.

                      Code:
                      cd qrack-1.60.1-src && patch < /home/ler/Desktop/qrack-1.60.1-src.patch
                      patching file cl_main.c
                      patching file cmdhist.dat
                      patching file host_cmd.c
                      patching file pr_cmds.c
                      patching file pr_edict.c
                      patching file pr_exec.c
                      patching file progs.h
                      patching file sv_main.c
                      then doing the make release, as phenom showed to do.

                      Code:
                      make release
                      
                      ** Release Build **
                        Compiling >> cl_demo.c ...
                        Compiling >> cl_input.c ...
                        Compiling >> cl_main.c ...
                        Compiling >> cl_parse.c ...
                        Compiling >> cl_tent.c ...
                        Compiling >> chase.c ...
                        Compiling >> cmd.c ...
                        Compiling >> common.c ...
                        Compiling >> console.c ...
                        Compiling >> crc.c ...
                        Compiling >> cvar.c ...
                        Compiling >> corona.c ...
                        Compiling >> gl_draw.c ...
                        Compiling >> gl_image.c ...
                        Compiling >> gl_mesh.c ...
                        Compiling >> gl_model.c ...
                        Compiling >> gl_refrag.c ...
                        Compiling >> gl_rlight.c ...
                        Compiling >> gl_rmain.c ...
                        Compiling >> gl_rmisc.c ...
                        Compiling >> gl_rpart.c ...
                        Compiling >> gl_rsurf.c ...
                        Compiling >> gl_screen.c ...
                        Compiling >> gl_smokes.c ...
                        Compiling >> gl_warp.c ...
                        Compiling >> host.c ...
                        Compiling >> host_cmd.c ...
                        Compiling >> iplog.c ...
                        Compiling >> keys.c ...
                        Compiling >> location.c ...
                        Compiling >> menu.c ...
                        Compiling >> mathlib.c ...
                        Compiling >> nehahra.c ...
                        Compiling >> net_dgrm.c ...
                        Compiling >> net_loop.c ...
                        Compiling >> net_main.c ...
                        Compiling >> net_vcr.c ...
                        Compiling >> net_udp.c ...
                        Compiling >> net_bsd.c ...
                        Compiling >> pr_cmds.c ...
                        Compiling >> pr_edict.c ...
                        Compiling >> pr_exec.c ...
                        Compiling >> r_part.c ...
                        Compiling >> sbar.c ...
                        Compiling >> slist.c ...
                        Compiling >> sv_main.c ...
                      sv_main.c: In function ‘SV_SendServerinfo’:
                      sv_main.c:199: warning: format not a string literal and no format arguments
                        Compiling >> sv_phys.c ...
                        Compiling >> sv_move.c ...
                        Compiling >> sv_user.c ...
                        Compiling >> zone.c ...
                        Compiling >> view.c ...
                        Compiling >> version.c ...
                        Compiling >> wad.c ...
                        Compiling >> world.c ...
                      world.c: In function ‘SV_TouchLinks’:
                      world.c:267: warning: cast from pointer to integer of different size
                      world.c: In function ‘SV_ClipToLinks’:
                      world.c:723: warning: cast from pointer to integer of different size
                        Compiling >> sys_unix.c ...
                        Compiling >> snd_dma.c ...
                        Compiling >> snd_mem.c ...
                      snd_mem.c: In function ‘DumpChunks’:
                      snd_mem.c:234: warning: cast from pointer to integer of different size
                        Compiling >> snd_mix.c ...
                        Compiling >> vid_common_gl.c ...
                        Compiling >> vid_glx.c ...
                        Compiling >> snd_oss.c ...
                        Compiling >> cd_unix.c ...
                      
                      **Built quake/qrack-glx client with cflags:
                      gcc 4.4.1
                      -I/usr/local/include -I/usr/X11R6/include -Dstricmp=strcasecmp -DGLQUAKE -DBASEDIR='.' -fno-strict-aliasing 
                      
                      **Linking quake/qrack-glx client with flags:
                      -lm -pthread -ldl
                      -L/usr/X11R6/lib64 -lX11 -lXext -lXxf86vm -lXxf86dga
                      -L/usr/local/lib64 -L/usr/X11R6/lib64 -lGL -ljpeg -lpng12
                      
                      
                        Compiling >> cd_sdl.c ...
                        Compiling >> snd_sdl.c ...
                      
                      **Built quake/qrack-sdl client with cflags:
                      gcc 4.4.1
                      -I/usr/local/include -I/usr/X11R6/include -Dstricmp=strcasecmp -DGLQUAKE -DBASEDIR='.' -fno-strict-aliasing 
                      
                      **Linking quake/qrack-sdl client with flags:
                      -lm -pthread -ldl
                      -L/usr/X11R6/lib64 -lX11 -lXext -lXxf86vm -lXxf86dga
                      -L/usr/lib -lSDL
                      -L/usr/local/lib64 -L/usr/X11R6/lib64 -lGL -ljpeg -lpng12
                      
                      
                        Compiling >> dz29src/main.c ...
                        Compiling >> dz29src/compress.c ...
                        Compiling >> dz29src/uncompress.c ...
                        Compiling >> dz29src/list.c ...
                        Compiling >> dz29src/crc32.c ...
                        Compiling >> dz29src/encode.c ...
                        Compiling >> dz29src/decode.c ...
                        Compiling >> dz29src/v1code.c ...
                        Compiling >> dz29src/conmain.c ...
                        Compiling >> dz29src/delete.c ...
                        Compiling >> dz29src/zlib/adler32.c ...
                        Compiling >> dz29src/zlib/deflate.c ...
                        Compiling >> dz29src/zlib/trees.c ...
                        Compiling >> dz29src/zlib/inflate.c ...
                        Compiling >> dz29src/zlib/infblock.c ...
                        Compiling >> dz29src/zlib/inftrees.c ...
                        Compiling >> dz29src/zlib/infcodes.c ...
                        Compiling >> dz29src/zlib/infutil.c ...
                        Compiling >> dz29src/zlib/inffast.c ...
                      
                      **Built quake/dzip with cflags:
                      gcc 4.4.1
                      -I/usr/local/include -I/usr/X11R6/include -Dstricmp=strcasecmp -DGLQUAKE -DBASEDIR='.' -fno-strict-aliasing 
                      
                      **Linking quake/dzip with flags:
                      -lm -pthread -ldl
                      
                      
                      Compilation finished succesfully ;)
                      
                      'make install' to install in your quake home dir.
                      
                      'make install_root' if was built with DATADIR option enabled, you must gain root privileges.
                      Then relocating the qrack-sdl and etc files to my quake folder, where i've already extracked qrack 1.60, with its pak0/pak1 and pakX which i renamed to pak2.pak

                      running it in fullscreen with ./qrack-sdl -fullscreen 1680

                      It works, however i get these errors and i can't load anymaps, also i had difficulty exiting it because if you did quit;y it'd say "y" unknown command, so i found if i went to quit in the menu and hit enter then y and then ESC! which i didn't hit before ... it will actually close the qrack window.

                      Code:
                      Console initialized
                      UDP Initialized
                      Using XFree86-VidModeExtension Version 2.2
                      GL_VENDOR: NVIDIA Corporation
                      GL_RENDERER: GeForce 9800 GT/PCI/SSE2
                      GL_VERSION: 3.0.0 NVIDIA 185.18.36
                      Multitexture extensions found
                      Enabled 4 texture units on hardware
                      Video mode 800x600 initialized.
                      Couldn't load corona1 image
                      Couldn't load particlefont image
                      Couldn't load water_caustic image
                      Couldn't load solidskytexture image
                      Couldn't load alphaskytexture image
                      Sound sampling rate: 48000 Hz
                      CDAudio_Init: No CD in drive.
                      CDAudio_Init: CD contains no audio tracks.
                      CD Audio Initialized.
                      Exe: 12:06:30 Sep 22 2010
                      Hunk allocation: 128.0 MB
                      
                      Qrack version 1.60 (build 3131)
                      
                      
                       Qrack Initialized 
                      execing quake.rc
                      execing config.cfg
                      execing autoexec.cfg
                      Unknown command "cvar_reset_all"
                      Unknown command "joystick"
                      Unknown command "pq_waterblend"
                      Unknown command "pq_quadblend"
                      Unknown command "pq_pentblend"
                      Unknown command "pq_ringblend"
                      'wad' is not a field
                      CALL3      722(bound)bound()    
                          world.qc : damagescaleupdate
                          world.qc : worldspawn
                      <NO FUNCTION>
                      Bad builtin call number
                      
                      ===========================
                      Host_Error: Program error
                      ===========================
                      
                      couldn't exec serv.cfg
                      press ESC for menu. 
                      'wad' is not a field
                      CALL3      722(bound)bound()    
                          world.qc : damagescaleupdate
                          world.qc : worldspawn
                          world.qc : damagescaleupdate
                      Bad builtin call number
                      
                      ===========================
                      Host_Error: Program error
                      ===========================
                      
                      ]
                      ]map start
                      'wad' is not a field
                      CALL3      722(bound)bound()    
                          world.qc : damagescaleupdate
                          world.qc : worldspawn
                          world.qc : damagescaleupdate
                      Bad builtin call number
                      
                      ===========================
                      Host_Error: Program error
                      ===========================
                      Prior to the patching as i did try to run it once without the patch and it compiled with 0 errors as phenom showed before, however, when i went to run that compiled version without the patch, it froze my desktop and i had to hard down the pc. =(

                      Anyho... just figured i'd post this here.

                      It technically runs... as i can see console, and menu.... but can't load any maps.

                      Get that weird wad error.

                      I had a similar issue where qrack 1.60 would only show the console and freeze my PC if I tried loading anything.

                      I fixed this by completely cleaning out my Quake folder of any extra packs or mods/files and just keeping the bare-necessities to make quake run, pak0.pak, pak1.pak, autoexec.cfg, config.cfg, qrack-glx & qrack-sdl. Seemed to fix the issue of not only locking up my PC but also random program failure.

                      ALSO MAKE SURE YOU HAVE "build-essential" installed! Ubuntu users use "sudo apt-get install build-essential"
                      Last edited by Phenom; 10-27-2010, 03:27 PM.
                      QuakeOne.com
                      Quake One Resurrection

                      QuakeOne.com/qrack
                      Great Quake engine

                      Qrack 1.60.1 Ubuntu Guide
                      Get Qrack 1.60.1 running in Ubuntu!

                      Comment


                      • #41
                        Locking up your PC? You mean LOCKING UP, where even elephants fail?
                        Please, say that you use ATi.

                        Comment


                        • #42
                          Actually I'm running an Nvidia 7800 GT
                          QuakeOne.com
                          Quake One Resurrection

                          QuakeOne.com/qrack
                          Great Quake engine

                          Qrack 1.60.1 Ubuntu Guide
                          Get Qrack 1.60.1 running in Ubuntu!

                          Comment


                          • #43
                            When it Locks up you can do ctrl+alt+f1-f6 to get to the console
                            then issue: top
                            find process and then issue: killall process name.(eg.. qrack-glx)
                            then ctrl+alt+f7 to return to desktop.
                            WARNING
                            May be too intense for some viewers.
                            Stress Relief Device
                            ....BANG HEAD HERE....
                            ---------------------------
                            .
                            .
                            .
                            .
                            .--------------------------

                            Comment


                            • #44
                              Yeas, this will get you out of trouble 99% of times and I just can't imagine Qrack completely killing OS. Phenom, are inputs dead? I mean keyboard seems not to do anything? If so, try magic keys to cleanly reboot.
                              Hold SysRq+Alt and slowly (like 1,5 sec delay between them) type: r s e i u b
                              The last 'b' may not work, so tap ctrl+alt+del intead, should reboot now. I'm not on Ubuntu, so I don't know if magic keys have to be enabled here first to work (like on Fedora).
                              Everytime I had similar lockup like this (and it was just a very few) it got me out of trouble. Complete OS lockup is very rare and simple app doing it is sometimes true with ATi's 'software', that's why I asked.

                              Comment


                              • #45
                                I am having trouble setting up code::blocks correctly and other
                                headaches so lets just test what we have for now.
                                My quake dir is /username/quake/ and qrack from commandline works right for me, sometimes I may heve to do it a few times before pulse sets up sound though.
                                Here is what I built of it on Lucid

                                BETA

                                http://quakeone.dyndns.org/qrack-1.60.1_1.6-1_i386.deb
                                P.S.
                                NEVER RQ your rig....hehe
                                Last edited by bluntz; 11-02-2010, 04:45 PM.
                                WARNING
                                May be too intense for some viewers.
                                Stress Relief Device
                                ....BANG HEAD HERE....
                                ---------------------------
                                .
                                .
                                .
                                .
                                .--------------------------

                                Comment

                                Working...
                                X