![Civ 5 在启动时崩溃](https://linux22.com/image/1564714/Civ%205%20%E5%9C%A8%E5%90%AF%E5%8A%A8%E6%97%B6%E5%B4%A9%E6%BA%83.png)
我在 Steam 上全新安装了文明 5,但启动时出现黑屏,然后立即崩溃。我在终端中看到此错误:
ERROR: ld.so: object '/home/myuser/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/myuser/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
我正在使用 Manjaro linux 并通过 steam 客户端安装了它,但是它在该文件夹中提到了 ubuntu……
以下是游戏运行时的完整输出:
GameAction [AppID 8930, ActionID 2] : LaunchApp changed task to SynchronizingCloud with ""
GameAction [AppID 8930, ActionID 2] : LaunchApp changed task to ProcessingShaderCache with ""
GameAction [AppID 8930, ActionID 2] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 8930, ActionID 2] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 8930, ActionID 2] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 8930, ActionID 2] : LaunchApp continues with user response "CreatingProcess"
Opted-in Controller Mask: 30
Game update: AppID 8930 "", ProcID 6920, IP 0.0.0.0:0
>>> Adding process 6920 for game ID 8930
GameAction [AppID 8930, ActionID 2] : LaunchApp changed task to WaitingGameWindow with ""
ERROR: ld.so: object '/home/myuser/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/myuser/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
GameAction [AppID 8930, ActionID 2] : LaunchApp changed task to Completed with ""
>>> Adding process 6921 for game ID 8930
Game update: AppID 8930 "", ProcID 6921, IP 0.0.0.0:0
Setting breakpad minidump AppID = 8930
Steam_SetMinidumpSteamID: Caching Steam ID: 76561198017115478 [API loaded no]
Installing breakpad exception handler for appid(gameoverlayui)/version(20180608222225)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Game removed: AppID 8930 "", ProcID 6921
No cached sticky mapping in ActivateActionSet.Installing breakpad exception handler for appid(steam)/version(1528497815)
答案1
我在 Manjaro 上遇到了同样的问题,游戏运行正常,但在系统更新后,启动时开始崩溃并显示相同的错误消息。显然这是由于脉冲音频升级到版本 12.0 引起的。添加
LD_PRELOAD=/usr/lib32/libopenal.so.1 %command%
启动选项中为我解决了这个问题。
答案2
如果您使用的是 steam 客户端测试版,请在 steam 库的游戏属性选项卡中添加./Civ5XP "%command%"
(保留原有的引号) 。Set Launch Options
此外,此错误不会导致崩溃,并且会被 steam 忽略。导致崩溃的原因可能是游戏目录文件名中的撇号 (')。查看 log /steam 输出中是否有“意外的 EOF”,在这种情况下,上述解决方法适用。这是 steam 客户端测试版中的一个错误。
答案3
尝试在游戏属性菜单中使用此作为启动选项从 steam 库运行:./Civ5XP "LD_PRELOAD='/usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so ./libcxxrt.so /usr/lib32/libstdc++.so.6' %command%"
答案4
正如 Steam 讨论中的一位用户所建议的,对我来说唯一可行的解决方案如下:
LD_PRELOAD='./libcxxrt.so:/usr/$LIB/libstdc++.so.6:/usr/lib32/libopenal.so.1' %command%