我下载了一个游戏。它有一个问题,就是每次启动它时都无法正常工作,我都会看到白屏。
做了一些 cli 魔法,发现游戏缺少一些库,安装了它们。游戏仍然无法运行,据我发现它加载有问题libsteam_api.so
,我也找不到修复方法。该游戏几乎没有启动脚本,当使用其中一个启动脚本时,它会生成一个.dmp
文件,运行时file
显示文件类型为:Mini DuMP crash report
* 发现 Steam 上的旧讨论表明我的 GPU 不够快,但我仍然会尝试修复它
答案1
cargo install minidump-stackwalk
minidump-stackwalk /home/dev/.local/share/feral-interactive/AlienIsolation/crashes/565dabb2-f810-712b-0ae6b3e7-76c9445e.dmp
奇迹般地,通过运行其他应用程序,我发现了一些在这里也能工作的东西。 =-O >.< 8-)
Xephyr :99 -resizeable -screen 1280x720 &
LD_LIBRARY_PATH=./lib/x86_64 DISPLAY=:99 ./bin/AlienIsolation
段错误
LD_LIBRARY_PATH=./lib/x86_64 ./bin/AlienIsolation
它与没有给我任何信息的 crashbdump 完全无关。除了有迹象表明我可能在故障排除中破坏了脉冲音频
0x7f34fc77d000 - 0x7f350c77cfff memfd:pulseaudio (deleted) ???
不知道这意味着什么。但我没有音频。虽然它在 cvlc 中有效...将调查
剩下的就是。
Crash reason: SIGSEGV
Crash address: 0x000000000000d801 **
** Null pointer detected with offset: 0x000000000000d801
Crashing instruction: `cmp byte [rbp + 0xd801], 0x0`
Memory accessed by instruction:
0. Address: 0x000000000000d801
Size: 1
Process uptime: not available
Thread 0 (crashed)
0 AlienIsolation + 0x65042b
rax = 0x00007f350d11df60 rdx = 0x0000000000000001
rcx = 0x0000000000000000 rbx = 0x0000000000001f01
rsi = 0
知道这一点总是好的。如果我不使用 zephyr,它会调用指向零的指针!调用一个不存在的对象。每次都崩溃