Announcement

Collapse
No announcement yet.

ETQW 1.5 under Gallium3D (R300)

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

  • ETQW 1.5 under Gallium3D (R300)

    What is needed to run ETQW under Gallium3D, ATI R520 GPU? I can start the game but when I hit play, it crashes.

    I am use ppa edgers for the Gallium3D r300g.

  • #2
    libtxc_dxtn?


    There was talk about a segfault, even with s3tc, there's a bug report here, but I'm not sure if it's the same problem you're having:


    It's probably a good idea to get a backtrace and file your own bug.

    Comment


    • #3
      I just installed the libtxc_dxtn and still dropping to the game console.
      Not sure what to do now? wait for more latest rebuild from ppa xedgers?

      Comment


      • #4
        What kind of system are you on? If you're on an x86_64 system you've probably installed a 64-bit libtxc_dxtn, but you need a 32-bit one for etqw, which is 32bit as well.

        Comment


        • #5
          Yes, I do have x86_64 system and I did compile and install the lib under 64 bits and no special compiler options to force 32-bits.

          Now how do I compile that lib in 32-bits mode?

          Comment


          • #6
            You need to compile Mesa and libdrm for 32-bit too if you want direct rendering. Baahh, just get a 32-bit distro, really. I think you have no other choice.

            Comment


            • #7
              In a nutshell, ETQW can't run under 64-bit. I will give up on that game to run under linux. I still double boot my machine and still run the game under WinXP.

              Comment


              • #8
                Originally posted by Beiruty View Post
                Now how do I compile that lib in 32-bits mode?
                Put -m32 to CFLAGS and LDFLAGS in Makefile. Though you do need 32bit deps as marek said.

                Comment


                • #9
                  Originally posted by marek View Post
                  You need to compile Mesa and libdrm for 32-bit too if you want direct rendering. Baahh, just get a 32-bit distro, really. I think you have no other choice.
                  It's really not that bad.
                  For libtxc_dtn.so you just have to adjust the Makefile like this:
                  Code:
                  CFLAGS += -Wall -pedantic -fPIC
                  OPT_CFLAGS = -O3
                  LDFLAGS += -shared -fPIC
                  OBJS = txc_compress_dxtn.o txc_fetch_dxtn.o
                  LIB = libtxc_dxtn.so
                  
                  $(LIB): $(OBJS)
                          $(CC) $(LDFLAGS) -o $@ $(OBJS)
                  
                  %.o: %.c txc_dxtn.h
                          $(CC) $(CFLAGS) $(OPT_CFLAGS) -c -o $@ $<
                  
                  clean:
                          rm -f $(OBJS) $(LIB)
                  
                  install: $(LIB)
                          install -d $(DESTDIR)/usr/lib
                          install -m 755 $(LIB) $(DESTDIR)/usr/lib
                  
                  install32: $(LIB)
                          install -d $(DESTDIR)/usr/lib32
                          install -m 755 $(LIB) $(DESTDIR)/usr/lib32
                  Then just do make; sudo make install and you should be ready.
                  And I'm not 100% sure, as I'm not a Ubuntu-user, but I think the xorg-edgers ppa already gives you 32bit mesa and drivers, so you should be clear on that front.

                  Comment


                  • #10
                    GODDAMN 1 min edit limit.

                    What you should do is CFLAGS="-m32" LDFLAGS="-m32" make; sudo make install32. I just c&p the Makefile without looking at it again, and I thought I had added the -m32 flag in there. But apparently I set them as environment-variables.

                    And since I'm doing another post anyway, I might as well add this:
                    And I'm not 100% sure, as I'm not a Ubuntu-user, but I think the xorg-edgers ppa already gives you 32bit mesa and drivers, so you should be clear on that front.
                    In case I'm wrong on that, you'll have to build mesa yourself, but that's not so hard as well. This:
                    Code:
                    git clone git://anongit.freedesktop.org/git/mesa/mesa
                    cd mesa
                    ./autogen.sh --enable-32-bit --enable-gallium-radeon --disable-gallium-llvm --with-state-trackers=dri,glx,egl,vega --with-dri-drivers=r300,swrast
                    make -j2
                    cp lib/gallium/radeong_dri.so lib/gallium/r300_dri.so
                    should do the trick. If you're missing any dependencies you should be able to install them via apt-get build-dep mesa. When you build mesa that way you'll need to prepend LIBGL_DRIVERS_PATH=~/src/mesa32/lib/gallium/ LD_LIBRARY_PATH=~/src/mesa32/lib/ (adjust the paths) to what you want to run.

                    Comment

                    Working...
                    X