protonscr

DotA2 fails to launch when Mesa is compiled with DRI3 support and the runtime is enabled

steamclosed reviewedruntime
ValveSoftware/steam-for-linux#2981 · opened 2013-11-11 by heftig · updated 2017-01-07 · 7 comments · github
Hheftig 2013-11-11 github

Arch Linux x86_64

Mesa libGL with DRI3 support loads libxcb-dri3, which isn't in the runtime, so it's taken from the system.

libxcb-dri3 needs the symbol xcb_send_fd, which is in the system libxcb, but not in the runtime one. Hence the symbol cannot be found and the linker fails.

TTele42 2013-11-11 github

My knee-jerk reaction is to recommend you try to LD_PRELOAD libxcb so that it already has the system version loaded up when it goes looking for libxcb.

Hheftig 2013-11-11 github

Right now I'm running with a few missing libraries extracted from the runtime, but the runtime disabled as a whole, which works well enough.

What exactly is the purpose of the runtime? Does libxcb really need to be in it, given it's universally installed when X is available?

TTele42 2013-11-11 github

The purpose of the runtime is to normalize the system libraries of ubuntu and to ensure that a basic set is always available for the games to use. It effectively makes Ubuntu 12.04, 12.10, and 13.04 all act as the same version. libxcb may be universally installed, but can we ensure that the 32bit varient of libxcb is on all 64 bit ubuntu systems? (I only refer to ubuntu because that is the only distro officially supported)

TThaodan 2013-12-28 github

what about adding proper depency handling for major libs via packagekit?

Kkisak-valve maintainer 2017-01-05 github

Per the 2017-01-05 steam beta update, does this issue still occur with the beta client?

Hheftig 2017-01-07 github

Seems it's fine now, but I did not retest if it still crashes with the non-beta client. Thanks.

Kkisak-valve maintainer 2017-01-07 github

Thanks for retesting @heftig. Closing as fixed.

Nothing extracted yet.