我在 Ubuntu 14.04 上安装了《龙腾世纪:起源》。一切顺利,我可以启动游戏并进入主菜单。但是当我选择“新游戏”时,它崩溃了。我可以更改选项或观看片尾字幕。以下是 wine 的控制台输出:
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
err:d3d:resource_init Out of adapter memory
wine: Unhandled page fault on read access to 0x00000002 at address 0x86bdec (thread 002b), starting debugger...
Unhandled exception: page fault on read access to 0x00000002 in 32-bit code (0x0086bdec).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:0086bdec ESP:0529d060 EBP:545df6b8 EFLAGS:00210206( R- -- I - -P- )
EAX:00000002 EBX:00021cc0 ECX:0529d050 EDX:0529d094
ESI:471204b0 EDI:00000008
Stack dump:
0x0529d060: 00000000 0529d094 00000000 11950942
0x0529d070: 0529d1b8 545df538 0529d1b4 00000001
0x0529d080: 0529d120 00a8ca0b ffffffff 005828e7
0x0529d090: 545df6b8 00000000 00000002 00000001
0x0529d0a0: 7bc37200 00000000 1195099e 000274e0
0x0529d0b0: 0529d1b4 575029b0 00000000 000149e8
Backtrace:
=>0 0x0086bdec in daorigins (+0x46bdec) (0x545df6b8)
0x0086bdec: movl 0x0(%eax),%ecx
Modules:
Module Address Debug info Name (149 modules)
PE 340000- 3fd000 Deferred fmodex
PE 400000- dbb000 Export daorigins
PE dc0000- 1169000 Deferred d3dx9_36
PE 1170000- 1192000 Deferred nxcharacter
PE 11a0000- 11b1000 Deferred physxloader
PE 11c0000- 1234000 Deferred nxcooking
PE 1240000- 1298000 Deferred speedtreert
PE 12a0000- 13be000 Deferred umbra
PE 5c40000- 60a5000 Deferred physxcore
PE 60b0000- 611e000 Deferred cudart32_41_22
PE 10000000-10047000 Deferred fmod_event
PE 18000000-18033000 Deferred binkw32
PE 78130000-781cb000 Deferred msvcr80
ELF 7b800000-7ba5b000 Deferred kernel32<elf>
\-PE 7b810000-7ba5b000 \ kernel32
ELF 7ba88000-7bc00000 Deferred libvorbisenc.so.2
ELF 7bc00000-7bcdb000 Deferred ntdll<elf>
\-PE 7bc10000-7bcdb000 \ ntdll
ELF 7bf00000-7bf04000 Deferred <wine-loader>
PE 7c420000-7c4a7000 Deferred msvcp80
ELF 7c4d6000-7c51f000 Deferred dsound<elf>
\-PE 7c4e0000-7c51f000 \ dsound
ELF 7c51f000-7c591000 Deferred libsndfile.so.1
ELF 7c591000-7c600000 Deferred libpulsecommon-4.0.so
ELF 7c713000-7c72b000 Deferred libresolv.so.2
ELF 7c72b000-7c757000 Deferred libvorbis.so.0
ELF 7c7e4000-7c7ed000 Deferred libogg.so.0
ELF 7c7ed000-7c821000 Deferred libflac.so.8
ELF 7c821000-7c828000 Deferred libasyncns.so.0
ELF 7c828000-7c832000 Deferred libwrap.so.0
ELF 7c832000-7c83d000 Deferred libjson-c.so.2
ELF 7c83d000-7c88c000 Deferred libpulse.so.0
ELF 7c8a8000-7c8d0000 Deferred winepulse<elf>
\-PE 7c8b0000-7c8d0000 \ winepulse
ELF 7c8d0000-7c8f2000 Deferred mmdevapi<elf>
\-PE 7c8e0000-7c8f2000 \ mmdevapi
ELF 7c8f2000-7c967000 Deferred ddraw<elf>
\-PE 7c900000-7c967000 \ ddraw
ELF 7cd90000-7cddb000 Deferred dinput<elf>
\-PE 7cda0000-7cddb000 \ dinput
ELF 7cddb000-7ce12000 Deferred libtxc_dxtn.so
ELF 7ce5a000-7ce65000 Deferred libpciaccess.so.0
ELF 7ce65000-7ce82000 Deferred libgcc_s.so.1
ELF 7cf6b000-7cf79000 Deferred libdrm_radeon.so.1
ELF 7cf79000-7cf81000 Deferred libdrm_nouveau.so.2
ELF 7cf81000-7cfa4000 Deferred libdrm_intel.so.1
ELF 7cfa4000-7d517000 Deferred i965_dri.so
ELF 7d517000-7d520000 Deferred librt.so.1
ELF 7d520000-7d56b000 Deferred libdbus-1.so.3
ELF 7d56b000-7d575000 Deferred libnih-dbus.so.1
ELF 7d575000-7d58e000 Deferred libnih.so.1
ELF 7d58e000-7d5ac000 Deferred libcgmanager.so.0
ELF 7d5ac000-7d5bf000 Deferred libudev.so.1
ELF 7d5bf000-7d5cd000 Deferred libdrm.so.2
ELF 7d5cd000-7d5d0000 Deferred libxshmfence.so.1
ELF 7d5d0000-7d5d7000 Deferred libxcb-sync.so.1
ELF 7d5d7000-7d5ef000 Deferred libxcb-glx.so.0
ELF 7d5ef000-7d64f000 Deferred libgl.so.1
ELF 7d68f000-7d700000 Deferred setupapi<elf>
\-PE 7d6a0000-7d700000 \ setupapi
ELF 7d8d9000-7d8e0000 Deferred libnss_dns.so.2
ELF 7d8e0000-7d8e4000 Deferred libnss_mdns4_minimal.so.2
ELF 7da01000-7da05000 Deferred libxcb-present.so.0
ELF 7da05000-7da09000 Deferred libxcb-dri3.so.0
ELF 7da09000-7da0f000 Deferred libxcb-dri2.so.0
ELF 7da0f000-7da12000 Deferred libx11-xcb.so.1
ELF 7da12000-7da16000 Deferred libxdamage.so.1
ELF 7da16000-7da3b000 Deferred imm32<elf>
\-PE 7da20000-7da3b000 \ imm32
ELF 7da3b000-7da72000 Deferred uxtheme<elf>
\-PE 7da40000-7da72000 \ uxtheme
ELF 7da72000-7da78000 Deferred libxfixes.so.3
ELF 7da78000-7da83000 Deferred libxcursor.so.1
ELF 7da83000-7da93000 Deferred libxi.so.6
ELF 7da93000-7da97000 Deferred libxcomposite.so.1
ELF 7da97000-7daa2000 Deferred libxrandr.so.2
ELF 7daa2000-7daad000 Deferred libxrender.so.1
ELF 7daad000-7dab3000 Deferred libxxf86vm.so.1
ELF 7dab3000-7dab7000 Deferred libxinerama.so.1
ELF 7dab7000-7dabe000 Deferred libxdmcp.so.6
ELF 7dabe000-7dac2000 Deferred libxau.so.6
ELF 7dac2000-7dae4000 Deferred libxcb.so.1
ELF 7dae4000-7dc18000 Deferred libx11.so.6
ELF 7dc18000-7dc2b000 Deferred libxext.so.6
ELF 7dc2d000-7dc45000 Deferred libglapi.so.0
ELF 7dc47000-7dcd9000 Deferred winex11<elf>
\-PE 7dc50000-7dcd9000 \ winex11
ELF 7dd58000-7dd81000 Deferred libexpat.so.1
ELF 7dd81000-7ddbc000 Deferred libfontconfig.so.1
ELF 7ddbc000-7dde4000 Deferred libpng12.so.0
ELF 7dde4000-7ddfe000 Deferred libz.so.1
ELF 7ddfe000-7de9e000 Deferred libfreetype.so.6
ELF 7de9e000-7dec0000 Deferred libtinfo.so.5
ELF 7dec0000-7dee5000 Deferred libncurses.so.5
ELF 7df01000-7e037000 Deferred oleaut32<elf>
\-PE 7df20000-7e037000 \ oleaut32
ELF 7e037000-7e146000 Deferred opengl32<elf>
\-PE 7e050000-7e146000 \ opengl32
ELF 7e146000-7e286000 Deferred wined3d<elf>
\-PE 7e150000-7e286000 \ wined3d
ELF 7e286000-7e2c3000 Deferred d3d9<elf>
\-PE 7e290000-7e2c3000 \ d3d9
ELF 7e2c3000-7e2df000 Deferred dinput8<elf>
\-PE 7e2d0000-7e2df000 \ dinput8
ELF 7e2df000-7e2fb000 Deferred wsock32<elf>
\-PE 7e2e0000-7e2fb000 \ wsock32
ELF 7e2fb000-7e3a3000 Deferred msvcrt<elf>
\-PE 7e310000-7e3a3000 \ msvcrt
ELF 7e3a3000-7e3b7000 Deferred psapi<elf>
\-PE 7e3b0000-7e3b7000 \ psapi
ELF 7e3b7000-7e4be000 Deferred comctl32<elf>
\-PE 7e3c0000-7e4be000 \ comctl32
ELF 7e4be000-7e538000 Deferred shlwapi<elf>
\-PE 7e4d0000-7e538000 \ shlwapi
ELF 7e538000-7e76b000 Deferred shell32<elf>
\-PE 7e550000-7e76b000 \ shell32
ELF 7e76b000-7e7a1000 Deferred ws2_32<elf>
\-PE 7e770000-7e7a1000 \ ws2_32
ELF 7e7a1000-7e7c7000 Deferred iphlpapi<elf>
\-PE 7e7b0000-7e7c7000 \ iphlpapi
ELF 7e7c7000-7e7f4000 Deferred netapi32<elf>
\-PE 7e7d0000-7e7f4000 \ netapi32
ELF 7e7f4000-7e81f000 Deferred msacm32<elf>
\-PE 7e800000-7e81f000 \ msacm32
ELF 7e81f000-7e8a0000 Deferred rpcrt4<elf>
\-PE 7e830000-7e8a0000 \ rpcrt4
ELF 7e8a0000-7e9dc000 Deferred ole32<elf>
\-PE 7e8c0000-7e9dc000 \ ole32
ELF 7e9dc000-7ea4e000 Deferred advapi32<elf>
\-PE 7e9f0000-7ea4e000 \ advapi32
ELF 7ea4e000-7eb6b000 Deferred gdi32<elf>
\-PE 7ea60000-7eb6b000 \ gdi32
ELF 7eb6b000-7ecc5000 Deferred user32<elf>
\-PE 7eb80000-7ecc5000 \ user32
ELF 7ecc5000-7ed7f000 Deferred winmm<elf>
\-PE 7ecd0000-7ed7f000 \ winmm
ELF 7ef7f000-7ef8c000 Deferred libnss_files.so.2
ELF 7ef8c000-7ef98000 Deferred libnss_nis.so.2
ELF 7ef98000-7efb1000 Deferred libnsl.so.1
ELF 7efb1000-7efba000 Deferred libnss_compat.so.2
ELF 7efba000-7f000000 Deferred libm.so.6
ELF b7413000-b75c1000 Deferred libc.so.6
ELF b75c1000-b75c6000 Deferred libdl.so.2
ELF b75c7000-b75e3000 Deferred libpthread.so.0
ELF b75e3000-b75fd000 Deferred version<elf>
\-PE b75f0000-b75fd000 \ version
ELF b75ff000-b77b4000 Dwarf libwine.so.1
ELF b77b6000-b77d8000 Deferred ld-linux.so.2
ELF b77d8000-b77d9000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
00000008 (D) C:\Program Files\Dragon Age\bin_ship\daorigins.exe
00000040 0
0000003f -1
00000027 1
0000000d 1
0000003e 2
0000003d 2
0000003c 2
0000003b 15
0000003a 15
00000039 0
00000038 0
00000037 0
00000036 15
00000035 0
00000034 -1
00000033 0
00000032 0
00000031 0
00000030 0
0000002f 0
0000002e 0
0000002d 0
0000002c 0
0000002b 0 <==
00000009 0
0000000e services.exe
00000043 0
00000026 0
0000001f 0
0000001a 0
00000018 0
00000016 0
00000010 0
0000000f 0
00000012 mscorsvw.exe
0000001c 0
0000001b 0
00000019 0
00000013 0
00000014 explorer.exe
0000002a 0
00000015 0
0000001d winedevice.exe
00000025 0
00000022 0
00000021 0
0000001e 0
00000023 plugplay.exe
00000029 0
00000028 0
00000024 0
我用 Google 搜索了这个问题,但似乎在我搜索的搜索结果中,回溯显示某个特定的库存在问题,但这里却是 exe 文件本身存在问题。
我在 winetricks 中安装的软件包列表:
d3dx10
d3dx9
d3dx9_26
d3dx9_28
d3dx9_31
d3dx9_35
d3dx9_36
d3dx9_39
d3dx9_42
d3dx9_43
d3dxof
directx9
dotnet20
dotnet30(after dotnet20)
mfc42
msvcirt
physx
vcrun2005
vcrun2008
vcrun6
vcrun6sp6
xact
xact_jun2010
xinput
答案1
好吧,我找到问题了。由于我的嵌入式显卡内存不够,我不得不在 winetricks 中进行设置,使我的显卡内存默认为 500 MB。