Crash on launch on Ubuntu 16.04 with amdgpu

Discussion in 'Support!' started by SpaceKookie, September 4, 2016.

  1. SpaceKookie

    SpaceKookie New Member

    Messages:
    5
    Likes Received:
    0
    Hey everybody,

    I'm running Ubuntu 16.04 with the Kernel version 4.7 and mesa version Mesa 12.1.0. And PA crashes on launch when running through steam and by itself.

    Logs are in the attached files

    When running via steam it looks like it's not even really crashing but just....getting stuck? I'm really at a loss. I do remember it running on amdgpu-pro and I even think to remember it running on amdgpu a few kernel versions ago :/

    I'm really confused about this. And hope somebody can help me with this :(

    Attached Files:

  2. DeathByDenim

    DeathByDenim Post Master General

    Messages:
    4,328
    Likes Received:
    2,125
    You are probably running into problems because the Steam libraries are rather outdated. For that stand-alone version, can you rename the directory "steam-runtime" to "steam-runtime.bak"? I think you'll also need to install libsdl2-2.0-0. Finally, you'll need to make a symlink to libudev.so.0 because that library does not exist in Ubuntu anymore. So from inside of the PA directory, type
    Code:
    ln -s steam-runtime.bak/amd64/lib/x86_64-linux-gnu/libudev.so.0
  3. SpaceKookie

    SpaceKookie New Member

    Messages:
    5
    Likes Received:
    0
    Hey there. Thanks for the reply.

    I tried what you asked:
    • Rename steam runtime
    • Link the library into the PA folder
    • Install libsdl
    I get the same error when running PA as a standalone application. When trying to run through steam something weird happened: Obviously steam unpacked the runtime again and broke until I restored my runtime backup.

    Are there more verbose or better logs in PA that might give any indication of what's going on here? :/
  4. DeathByDenim

    DeathByDenim Post Master General

    Messages:
    4,328
    Likes Received:
    2,125
    Though the --help option tells me that there is a way to get more verbose logs, they don't actually seem to do anything as far as I can tell...

    What was the weird thing happening with Steam? Steam itself failed to launch? Did if give you any errors? Specifically, errors about radeonsi_dri.so or swrast_dri.so?

    What's the output of the following command?
    Code:
    locate radeonsi_dri.so
  5. SpaceKookie

    SpaceKookie New Member

    Messages:
    5
    Likes Received:
    0
    The output of that command you gave me was:

    Code:
    /usr/lib/i386-linux-gnu/dri/radeonsi_dri.so
    /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
    
    The driver is properly installed. Thus launching PA by itself must be some sort of linking error then?

    And yea, running PA via Steam doesn't give me anything except what I linked you. It seems to just....stop. No actual error message.
    But the steam UI stops picking up "PA" as playing. (My frame goes back from green to blue).

    I even tried a fresh install of Ubuntu on a different SSD. It's like the game just broke :(
  6. DeathByDenim

    DeathByDenim Post Master General

    Messages:
    4,328
    Likes Received:
    2,125
    Yeah, that looks ok. Could you try starting the standalone PA like this?
    Code:
    LD_PRELOAD=/usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so ./PA
    Does it still complain?

    It might also pick up the wrong version of libGL.so. You can try
    Code:
    locate libGL.so
    and then try the same LD_PRELOAD trick with the libGL.so's it finds. There may be multiple.
  7. SpaceKookie

    SpaceKookie New Member

    Messages:
    5
    Likes Received:
    0
    No, but it complains about something new. As you kinda predicted :p
    So I did the linking as well for libGL like so:

    Code:
    LD_PRELOAD=/usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so,/usr/lib/x86_64-linux-gnu/mesa/libGL.so ./PA --nomods
    
    Then I get the errors:
    Code:
    libGL error: unable to load driver: radeonsi_dri.so
    libGL error: driver pointer missing
    libGL error: failed to load driver: radeonsi
    libGL error: unable to load driver: radeonsi_dri.so
    libGL error: driver pointer missing
    libGL error: failed to load driver: radeonsi
    libGL error: unable to load driver: swrast_dri.so
    libGL error: failed to load driver: swrast
    X Error of failed request:  BadValue (integer parameter out of range for operation)
      Major opcode of failed request:  155 (GLX)
      Minor opcode of failed request:  3 (X_GLXCreateContext)
      Value in failed request:  0x0
      Serial number of failed request:  97
      Current serial number in output stream:  98
    
    
    This still happens even after (addionally) linking
    Code:
    /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    
    aka a newer version of the standard lib (which is sometimes an issue with Steam itself).

    Funnily enough, this only seems to be an issue with TITANS. Vanilla PA launches although I get horrible rendering artifacts in game (aka it's unplayable). But at least it opens. Maybe they broke something in a recent patch? :/

    Also...do Uber engineers respond to support problems or is it basically just the community?
  8. DeathByDenim

    DeathByDenim Post Master General

    Messages:
    4,328
    Likes Received:
    2,125
    That is rather strange. Vanilla and Titans are the same executables. The only difference is the available content, but that should have no influence on starting PA in the first place. So if they are both build 94684, then the behaviour should be the same.

    I'm not sure why it is still refusing to load the drivers though. The only thing that comes to mind is the libstdc++, which you already tried. And that shouldn't even be an issue for the stand-alone version of PA with the renamed steam-runtime directory.

    I mean, if you type "ldd ./PA" for the stand-alone one, the libstdc++ points to the right place, right?

    Uber engineers don't really follow the forums. If you want to get a hold of them, the best way is just mailing support@uberent.com directly.
  9. SpaceKookie

    SpaceKookie New Member

    Messages:
    5
    Likes Received:
    0
    Yea, everything is linked correctly as shown here:

    Code:
    spacekookie@normandy:/data/Steam/steamapps/common/Planetary Annihilation Titans$ ldd ./PA
        linux-vdso.so.1 =>  (0x00007ffe4735c000)
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe1e3dda000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe1e3bbc000)
        libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007fe1e394b000)
        libsteam_api.so => /data/Steam/steamapps/common/Planetary Annihilation Titans/./libsteam_api.so (0x00007fe1e3739000)
        libfmodevent64-4.44.60.so => /data/Steam/steamapps/common/Planetary Annihilation Titans/./libfmodevent64-4.44.60.so (0x00007fe1e34ad000)
        libfmodeventnet64-4.44.60.so => /data/Steam/steamapps/common/Planetary Annihilation Titans/./libfmodeventnet64-4.44.60.so (0x00007fe1e3216000)
        libfmodex64-4.44.60.so => /data/Steam/steamapps/common/Planetary Annihilation Titans/./libfmodex64-4.44.60.so (0x00007fe1e2e65000)
        libCoherentUI.so => /data/Steam/steamapps/common/Planetary Annihilation Titans/./libCoherentUI.so (0x00007fe1e2b24000)
        libcurl-gnutls.so.4 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007fe1e28cc000)
        libSDL2-2.0.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0 (0x00007fe1e25d0000)
        libstdc++.so.6 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fe1e22cc000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe1e1fc3000)
        libgcc_s.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe1e1dac000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe1e19e3000)
        /lib64/ld-linux-x86-64.so.2 (0x00005616e6db1000)
        libexpat.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fe1e17b8000)
        libxcb-dri3.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007fe1e15b5000)
        libxcb-present.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007fe1e13b2000)
        libxcb-sync.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fe1e11ab000)
        libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007fe1e0fa8000)
        libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007fe1e0d79000)
        libXext.so.6 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fe1e0b67000)
        libXdamage.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007fe1e0964000)
        libXfixes.so.3 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fe1e075d000)
        libX11-xcb.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fe1e055b000)
        libX11.so.6 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fe1e0226000)
        libxcb-glx.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007fe1e000e000)
        libxcb-dri2.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007fe1dfe09000)
        libxcb.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fe1dfbe9000)
        libXxf86vm.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007fe1df9e4000)
        libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fe1df7d5000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe1df5d1000)
        libidn.so.11 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libidn.so.11 (0x00007fe1df39d000)
        liblber-2.4.so.2 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/liblber-2.4.so.2 (0x00007fe1df18f000)
        libldap_r-2.4.so.2 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2 (0x00007fe1def3f000)
        libgssapi_krb5.so.2 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007fe1ded01000)
        libz.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libz.so.1 (0x00007fe1deae9000)
        libgnutls.so.26 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libgnutls.so.26 (0x00007fe1de82d000)
        libgcrypt.so.11 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libgcrypt.so.11 (0x00007fe1de5af000)
        librtmp.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/librtmp.so.0 (0x00007fe1de394000)
        libXau.so.6 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fe1de191000)
        libXdmcp.so.6 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fe1ddf8a000)
        libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fe1ddd6f000)
        libsasl2.so.2 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007fe1ddb53000)
        libgssapi.so.3 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libgssapi.so.3 (0x00007fe1dd915000)
        libkrb5.so.3 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007fe1dd646000)
        libk5crypto.so.3 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007fe1dd41e000)
        libcom_err.so.2 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007fe1dd219000)
        libkrb5support.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007fe1dd011000)
        libtasn1.so.3 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libtasn1.so.3 (0x00007fe1dce00000)
        libp11-kit.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007fe1dcbed000)
        libgpg-error.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007fe1dc9e9000)
        libheimntlm.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libheimntlm.so.0 (0x00007fe1dc7e1000)
        libkrb5.so.26 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libkrb5.so.26 (0x00007fe1dc55b000)
        libasn1.so.8 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libasn1.so.8 (0x00007fe1dc2ba000)
        libhcrypto.so.4 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libhcrypto.so.4 (0x00007fe1dc086000)
        libroken.so.18 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libroken.so.18 (0x00007fe1dbe71000)
        libkeyutils.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007fe1dbc6c000)
        libwind.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libwind.so.0 (0x00007fe1dba43000)
        libheimbase.so.1 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libheimbase.so.1 (0x00007fe1db833000)
        libhx509.so.5 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libhx509.so.5 (0x00007fe1db5e9000)
        libsqlite3.so.0 => /data/Steam/steamapps/common/Planetary Annihilation Titans/./steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007fe1db345000)
    (Sorry for that, it didn't accept my pastebin link)

    At least the files exist and everything. I am completely at a loss. And I think I'll get in touch with the Uber e-mail support now. I hope they can help me. Because this is just ridiculous :(
  10. DeathByDenim

    DeathByDenim Post Master General

    Messages:
    4,328
    Likes Received:
    2,125
    Hmm, that shows that it's still using the Steam runtime libraries. Most notably for libstdc++, which would prevent the Radeon drivers from loading because they need a newer version than that. The LD_PRELOAD should have fixed that though, but just to be sure, can you do the ldd command with the version of PA where you had renamed the steam-runtime directory? Just to make sure that it really isn't picking up any Steam libraries anywhere.

    And as far as I know the Steam version of PA shouldn't even have the steam-runtime subdirectory, as it should just use the ones that come with Steam itself. That's kind of odd too.

Share This Page