Steam Proton - how to use?

steam

(kepszlok) #1

So. I woud like to use Steam’s proton to play Windows only games on Linux.

At first, i installed the needed Vulkan drivers.
Then, i enabled the proton (Steamplay), with proton 3.16 selected.

When i start a win only game, i get exactly this output:

Game update: AppID 0 "openttd.exe", ProcID 2773, IP 0.0.0.0:0
GameAction [AppID 0, ActionID 1] : LaunchApp changed task to Completed with ""
ERROR: ld.so: object '/home/kepsz/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 2773 for game ID 33554432
>>> Adding process 2774 for game ID 33554432
/bin/sh: /mnt/store_1/Games/openttd/openttd.exe: cannot execute binary file: Exec format error
Game removed: AppID 0 "openttd.exe", ProcID 2773 

That “Exec format error” message sounds strange. I’m open to suggestions…


(tom) #2

this is the cause from your problem

LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32)

in the binary ELF section is something wrong and for this reason the linker failed


(kepszlok) #3

There are a similar error when i start a normal, Linux game.

ERROR: ld.so: object '/home/kepsz/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/kepsz/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

But the overlay works. Btw, launching a game can kill most of KDE’s functionalyt here (that’s a new problem for me, but i have no idea what’s the cause).


(tom) #4

https://www.linuxquestions.org/questions/linux-newbie-8/error-while-loading-shared-libraries-wrong-elf-class-elfclass32-4175491402/


(Luca Giambonini) #5

I enabled proton and that’s it, you have only to hope that the game is compatible with the emulator.

you want to play openttd? check in [desktop] is already there!


(kepszlok) #6

I know about the Linux version of openttd, but that was just an example in this case, because it’s a so simple game.

I found some library issues, they needs to be fixed. Running ldd in this file: .local/share/Steam/ubuntu12_32/steamui.so showed missing 32bit libraries:

    libtier0_s.so => not found
    libvstdlib_s.so => not found
    libv8.so => not found
    libvideo.so => not found
    libSDL2-2.0.so.0 => not found
    libXtst.so.6 => not found
    libpulse.so.0 => not found

They require to install these libs:
lib32-libpulse
lib32-sdl2

But i was not able to fix these:

    libtier0_s.so => not found
    libvstdlib_s.so => not found
    libv8.so => not found
    libvideo.so => not found

Any ideas?

Btw, even if a game is not supported with proton, i think it shoud not fail with this message: “cannot execute binary file: Exec format error” Right?


(Luca Giambonini) #7

/usr/lib/libv8.so is owned by v8 3.30.33.15-3

This is the only one installed on my system, all the others .so are located in /Steam/SteamApps/common/
I can’t find openttd on steam…


(kepszlok) #8

Hmm, all 4 of those are present in /home/kepsz/.local/share/Steam/ubuntu12_32/ this folder, where steamui.so are also present. Why it can’t see them?

I have added it manually, as non-steam game. But it’s the same with other games that present in Steam.


(Luca Giambonini) #9

Do you have the chance to try with a native game from stream (without to import it?) For instance I installed CreativeDestruction and works, but is slow.

use locate to find them, in my case:

locate steamui.so
/home/luca/Steam/ubuntu12_32/steamui.so


(kepszlok) #10

It starts with proton (but onyl from an ext partition), but I’m still getting a bunch of LD_Preload errors. If you start steam from terminal, you have those preload erros too with this game?
(btw, i get a main menu or something with only a repair button on it)

But for the other issue, what i want is saddly not yet possible withouth a funny hack. See the video here:

I may have to try a separated proton instance, to start my things directly with it.

I did it, and all of the libs was there.


(Luca Giambonini) #11

Yes I see similar errors, but at the end of the line is written that they are ignored.

ERROR: ld.so: object ‘/home/luca/Steam/ubuntu12_32/gameoverlayrenderer.so’ from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

My game load also with this errors!


(kepszlok) #12

So it’s normal then. :slight_smile:

But we should still add these deps to steam:
lib32-libpulse
lib32-sdl2
They may prevent problems in the future.


(Luca Giambonini) #13

I don’t think that this libraries are necessary to run steam, the one defined as dependencies should be enough. It’s also true that some games requires other libraries, but for that better to look at:
https://wiki.archlinux.org/index.php/Steam/Game-specific_troubleshooting

 luca  ~/Steam/ubuntu12_32  >  ldd steam
        linux-gate.so.1 (0xf7f92000)
        libX11.so.6 => /usr/lib32/libX11.so.6 (0xf798f000)
        librt.so.1 => /usr/lib32/librt.so.1 (0xf7985000)
        libdl.so.2 => /usr/lib32/libdl.so.2 (0xf7980000)
        libstdc++.so.6 => /usr/lib32/libstdc++.so.6 (0xf77f4000)
        libpthread.so.0 => /usr/lib32/libpthread.so.0 (0xf77d5000)
        libm.so.6 => /usr/lib32/libm.so.6 (0xf7711000)
        libc.so.6 => /usr/lib32/libc.so.6 (0xf753e000)
        libxcb.so.1 => /usr/lib32/libxcb.so.1 (0xf7513000)
        /lib/ld-linux.so.2 => /usr/lib/ld-linux.so.2 (0xf7f94000)
        libgcc_s.so.1 => /usr/lib32/libgcc_s.so.1 (0xf74f6000)
        libXau.so.6 => /usr/lib32/libXau.so.6 (0xf74f3000)
        libXdmcp.so.6 => /usr/lib32/libXdmcp.so.6 (0xf74ec000)

(kepszlok) #14

Yeah, i wrote some of these entry in our wiki site back in the day… Even if we do nothing with the sdl2 libs, at least we should add them to Steam’s optional dep. list.

And there are the issue of the vulkan drivers. Proton requires them, but Steam itself will work without them. So the user may not get any notification about the missing vulkan drivers in the gui… At the moment, vulkan packages are not even opt for mesa. (also, kWin will get Vulkan renderer in the near future, so Vulkan drivers are essential if you ask me)

Yes, same here. You may check the steamui.so file too.


(system) closed #15

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.