Đây ban đầu là một vấn đề với Steam trên Ubuntu 15.04 / 15.10. Steam bó các lib cũ và đang va chạm với trình điều khiển mesa, đó cũng là lý do tại sao các trình điều khiển đóng không thấy vấn đề này. Cập nhật: Cũng có thể là bạn đang thiếu một số thứ. Xem câu trả lời khác của mchid.
Có một lỗi mở trong github của Steam .
Cách giải quyết hiện tại là loại bỏ phiên bản lib cũ, ít nhất là cho đến khi van khắc phục sự cố trong tập lệnh khởi động của chúng hoặc đại loại như thế.
Vì vậy, hãy nhập các thư mục này và thực hiện việc này (bỏ qua x86_64
nếu bạn chỉ có hệ thống 32 bit):
cd $HOME/.steam/steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak
cd $HOME/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu
mv libstdc++.so.6 libstdc++.so.6.bak
Nếu bạn gặp vấn đề với thư mục trên thì bạn nên thử điều này:
Một số người có .steam/steam/ubuntu12_32
, những người khác chỉ có .steam/ubuntu12_32
. Nếu bạn không có các thư mục này, hãy tìm vị trí chính xác bằng cách kiểm tra xem hơi của bạn đang tìm hồ sơ người dùng:
$ fgrep config= /usr/games/steam
config=$HOME/.steam
Sử dụng để tìm vị trí lib của bạn:
[config value] + /ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
|
\-> $HOME/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu
Nó hoạt động với tôi ... nhưng xin lưu ý rằng nếu một số trò chơi yêu cầu lib cũ từ thời gian chạy hơi nước, nó có thể bị sập (đó là lý do tại sao van nên khắc phục điều này)
Chỉnh sửa 2015-08-22:
Vì Steam hiện có một liên kết trong $HOME/.steam/root
đó luôn trỏ đến thư mục cài đặt Steam chính xác, lệnh này sẽ hoạt động cho mọi người và đơn giản hơn để khắc phục nhanh:
find $HOME/.steam/root/ubuntu12_32/steam-runtime/*/usr/lib/ -name "libstdc++.so.6" -exec mv "{}" "{}.bak" \; -print
Ngoài ra, hãy nhớ rằng trên mỗi bản cập nhật thời gian chạy hơi nước, có thể bạn sẽ cần phải chạy nó.
Chỉnh sửa 2016/02/2016:
Cũng xem trả lời mchid dưới đây, chỉ cần làm:
sudo apt-get install libgl1-mesa-dri libgl1-mesa-dri:i386
có thể là đủ để khắc phục điều này.
Chỉnh sửa 2016-10-23:
Đối với Ubuntu 16.10 , lệnh đã được cập nhật để xóa thêm các tệp đang phá vỡ trình điều khiển mesa, vì vậy lệnh mới này sẽ hoạt động:
find $HOME/.steam/root/ubuntu12_32/steam-runtime/*/usr/lib/ \( -name "libstdc++.so.6" -o -name "libgpg-error.so.0" -o -name "libxcb.so.1" -o -name "libgcc_s.so.1" \) -exec mv "{}" "{}.bak" \; -print
Đối với trình điều khiển nguồn đóng NVIDIA , xem câu trả lời của Vincent bên dưới.
Chỉnh sửa 2017-01-08:
Có lẽ là bản chỉnh sửa cuối cùng, bản cập nhật linux mới nhất nên khắc phục hầu hết, nếu không phải là tất cả các vấn đề! cuối cùng :CƯỜI MỞ MIỆNG
Chỉnh sửa 2017-08-03:
Đáng buồn thay, trở về từ kỳ nghỉ phát hiện ra rằng một số cập nhật gần đây một lần nữa đã phá vỡ hơi nước. Vì vậy, nếu bạn nhận được điều này khi bắt đầu, ngay sau khi tải xuống bản cập nhật:
process 23148: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
và sau đó là sự cố hơi nước, sau đó bạn đang gặp phải lỗi này , được báo cáo là không nghiêm trọng, nhưng nó gây ra sự cố hơi nước trên cùng một bản phát hành. cách giải quyết là đây:
ln -s ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libdbus-1.so.3 ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libdbus-1.so.3
chúc may mắn