私はArch Linux x86_64にSteamで最新バージョンのEmpire:Total Warを持っています。私はフォローしましたこのレディットガイドDMEをインストールします。すべてのステップ(オプションのステップを除く)が完了しましたが、起動時にゲームは実行されません。
私の仕様は次のとおりです。
$ inxi -SPARM -GCDN -v1 -xGCRS
System: Host: archlinux Kernel: 4.12.4-1-ARCH x86_64 (64 bit gcc: 7.1.1) Desktop: Gnome 3.24.3 (Gtk 3.22.18)
Distro: Arch Linux
Machine: Device: desktop Mobo: ASUSTeK model: P5Q PRO TURBO v: Rev 1.xx BIOS: American Megatrends v: 0701 date: 10/08/2012
CPU: Quad core Intel Core2 Quad Q6600 (Core 2 rev.11) (-MCP-) cache: 4096 KB
flags: (lm nx sse sse2 sse3 ssse3 vmx) bmips: 19207
clock speeds: max: 2403 MHz 1: 2403 MHz 2: 1603 MHz 3: 2136 MHz 4: 1603 MHz
Graphics: Card: Advanced Micro Devices [AMD/ATI] Juniper XT [Radeon HD 5770] bus-ID: 01:00.0
Display Server: N/A driver: radeon tty size: 131x87
Audio: Card-1 Advanced Micro Devices [AMD/ATI] Juniper HDMI Audio [Radeon HD 5700 Series]
driver: snd_hda_intel bus-ID: 01:00.1
Card-2 Intel 82801JI (ICH10 Family) HD Audio Controller driver: snd_hda_intel bus-ID: 00:1b.0
Sound: Advanced Linux Sound Architecture v: k4.12.4-1-ARCH
Network: Card: Qualcomm Atheros AR8121/AR8113/AR8114 Gigabit or Fast Ethernet
driver: ATL1E port: cc00 bus-ID: 02:00.0
Drives: HDD Total Size: 1500.3GB (4.3% used)
ID-1: /dev/sda model: WDC_WD5000AAKS size: 500.1GB
ID-2: /dev/sdb model: ST1000LM024_HN size: 1000.2GB
Partition: ID-1: / size: 457G used: 60G (14%) fs: ext4 dev: /dev/sda3
ID-2: /boot size: 202M used: 58M (31%) fs: ext4 dev: /dev/sda1
ID-3: swap-1 size: 0.54GB used: 0.06GB (11%) fs: swap dev: /dev/sda4
RAID: No RAID data: /proc/mdstat missing-is md_mod kernel module loaded?
Info: Processes: 247 Uptime: 1 day Memory: 2934.5/7987.4MB Init: systemd Gcc sys: 7.1.1
Client: Shell (fish) inxi: 2.3.27
ターミナルでゲームを実行し、以下を取得します。
$ ./.steam/steam/steamapps/common/Empire\ Total \ War/Empire.sh
~/.local/share/Steam/steamapps/common/Empire Total War/bin/game.i386: error while loading shared libraries: libvorbis.so.0: cannot open shared object file: No such file or directory
明らかに、いくつかの32ビットライブラリが欠落しており、いくつかのpacman
マジックリンクとシンボリックリンクがゲームに必要なライブラリを提供しました。しかし、ゲームを実行すると、次のものが返されます。
$ ./.steam/steam/steamapps/common/Empire Total War/bin/game.i386
Setting breakpad minidump AppID = 10500
Steam_SetMinidumpSteamID: Caching Steam ID: 76561198044159024 [API loaded no]
Dumped crashlog to /home/pradana/.local/share/feral-interactive/Empire/crashes//772c6081-0a79-298b-2c7a8124-23190ade.dmp
fish: “./game.i386” terminated by signal SIGSEGV (Address boundary error)
.dmp
以下を使用してファイル(コアダンプ)を読み取ろうとしました。
$ gdb ./game.i386 ~/.local/share/feral-interactive/Empire/crashes/4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp
ただし、エラーが返されます。
"~/.local/share/feral-interactive/Empire/crashes/4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp" is not a core dump: File format not recognized
私は以下を使用してファイルのエンコーディングを見つけようとしました。
$ file --mime 4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp
4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp: application/x-dmp; charset=binary
そして
$ chardetect-py2 4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp
4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp: Windows-1254 with confidence 0.299704567453
私も使った
$ iconv -c -f WINDOWS-1254 -t utf-8 4ab1b7fb-8cb4-b5b2-58c0ddd9-6767d769.dmp > dmp.txt
ログを読んでみましたが、ここでは何も得られません。
コードダンプファイルに何があるのか調べなければ進展を遂げられないようです。とにかく、この時点でSteamゲームがクラッシュする理由を見つけようとしています。
答え1
文書コアダンプではありませんが、Steamやサイト運営者が報告した内部競合ファイルのようです。拡張子.dmp
はスモークニシン
テキストエディタで読むことができます
実行中コアダンプを使用するには、環境で明示的に設定する必要があります。
ulimit -c unlimited
コアダンプはデバッグシンボルなしでは役に立たず、実際のコアダンプでもデバッグシンボルなしでは何も得られません。市販されているソフトウェアがデバッグシンボルを保持する可能性はほとんどありません。
SIGSEGV
間違ったメモリアクセスによって引き起こされる分割エラーは非常に広範なエラータイプであり、可能性はほとんど無限です。
答え2
これは、Googleのbreakpadツールセットを使用してGDBで解析できるコアファイルに変換されたWindowsミニダンプ形式です。 Steam バイナリには実際に役に立つシンボルがないため、使いやすさが制限されます。