我正试图通过Wine推出一个程序。它返回与KERNEL32.dll.WakeAllConditionVariable相关的错误。还有一些我没有足够经验的大调试块。我试过谷歌,但似乎葡萄酒数据库没什么可提供的。快速注意:我试图在干净的32位wineprefix中运行它,没有运气。无论如何,无论如何,我需要它在这个wineprefix中运行。不用多说,这里是我可以提供的所有原始信息。
yarden@Yarden-Desktop:~/.Skyrim/drive_c/users/yarden/Downloads/LOOT.0.9.0-0-g44a0d85.32.bit$ wine LOOT.exe
fixme:heap:HeapSetInformation 0x110000 0 0x33fd3c 4
fixme:advapi:EventRegister {5eec90ab-c022-44b2-a5dd-fd716a222a15}, 0x401123, 0x6b5c40, 0x6b5c58
fixme:thread:AcquireSRWLockExclusive (0x6c6dac): stub
fixme:thread:ReleaseSRWLockExclusive (0x6c6dac): stub
fixme:thread:AcquireSRWLockExclusive (0x6c6dac): stub
fixme:thread:ReleaseSRWLockExclusive (0x6c6dac): stub
fixme:thread:AcquireSRWLockExclusive (0x6c6dac): stub
fixme:thread:ReleaseSRWLockExclusive (0x6c6dac): stub
wine: Call from 0x7bc4cf69 to unimplemented function KERNEL32.dll.WakeAllConditionVariable, aborting
wine: Unimplemented function KERNEL32.dll.WakeAllConditionVariable called at address 0x7bc4cf69 (thread 0022), starting debugger...
还有调试器的输出,这是整个事情。
Unhandled exception: unimplemented function KERNEL32.dll.WakeAllConditionVariable called in 32-bit code (0x7bc4cf69).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7bc4cf69 ESP:0033f4e4 EBP:0033f558 EFLAGS:00200216( - -- I -A-P- )
EAX:006b385e EBX:7bcbe000 ECX:0033f56c EDX:7bcd8f40
ESI:0033f4fc EDI:006c6d68
Stack dump:
0x0033f4e4: 7ba53648 0033f528 7bc4cf43 00000000
0x0033f4f4: 7ba53648 7b88d444 80000100 00000001
0x0033f504: 00000000 7bc4cf69 00000002 006b3438
0x0033f514: 006b385e f7581feb 7b8ae000 0033f590
0x0033f524: 006c6d68 0033f558 7b872a15 00000000
0x0033f534: 7ba53648 7b88d444 7b880bac 006c6dac
Backtrace:
=>0 0x7bc4cf69 call_dll_entry_point+0x449() in ntdll (0x0033f558)
1 0x0022000f (0x0033f584)
2 0x00553ef0 in loot (+0x153eef) (0x0033f5a0)
3 0x00554024 in loot (+0x154023) (0x0033f5e4)
4 0x0053ae11 in loot (+0x13ae10) (0x0033f620)
5 0x0053ac68 in loot (+0x13ac67) (0x0033f63c)
6 0x0053ad05 in loot (+0x13ad04) (0x0033f688)
7 0x0051f9ac in loot (+0x11f9ab) (0x0033fc4c)
8 0x0052c051 in loot (+0x12c050) (0x0033fc74)
9 0x0051b56c in loot (+0x11b56b) (0x0033fc98)
10 0x004ff278 in loot (+0xff277) (0x0033fdf4)
11 0x005e79f3 in loot (+0x1e79f2) (0x0033fe40)
12 0x7b85a3fc call_process_entry+0xb() in kernel32 (0x0033fe58)
13 0x7b85b3ea ExitProcess+0xfe9() in kernel32 (0x0033fe88)
14 0x7bc7703c call_thread_func_wrapper+0xb() in ntdll (0x0033fea8)
15 0x7bc79e5d call_thread_func+0xfc() in ntdll (0x0033ffa8)
16 0x7bc7701a RtlRaiseException+0x21() in ntdll (0x0033ffc8)
17 0x7bc4d277 call_dll_entry_point+0x756() in ntdll (0x0033ffe8)
18 0xf758633d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
19 0xf75864a0 wine_switch_to_stack+0x1f() in libwine.so.1 (0xffea72a8)
20 0x7bc528d7 LdrInitializeThunk+0x336() in ntdll (0xffea7308)
21 0x7b861029 __wine_kernel_init+0x888() in kernel32 (0xffea8478)
22 0x7bc52e33 __wine_process_init+0x152() in ntdll (0xffea84e8)
23 0xf7583dff wine_init+0x30e() in libwine.so.1 (0xffea8548)
24 0x7bf00d42 main+0x81() in <wine-loader> (0xffea8998)
25 0xf7397637 __libc_start_main+0xf6() in libc.so.6 (0x00000000)
0x7bc4cf69 call_dll_entry_point+0x449 in ntdll: addl $12,%esp
Modules:
Module Address Debug info Name (129 modules)
PE 400000- 6ee000 Export loot
PE 10000000-12f89000 Deferred libcef
ELF 7b800000-7ba54000 Dwarf kernel32<elf>
\-PE 7b810000-7ba54000 \ kernel32
ELF 7bc00000-7bcda000 Dwarf ntdll<elf>
\-PE 7bc10000-7bcda000 \ ntdll
ELF 7bf00000-7bf04000 Dwarf <wine-loader>
ELF 7d007000-7d01d000 Deferred libgpg-error.so.0
ELF 7d01d000-7d092000 Deferred libpcre.so.3
ELF 7d092000-7d0af000 Deferred libgcc_s.so.1
ELF 7d0af000-7d15e000 Deferred libgcrypt.so.20
ELF 7d15e000-7d184000 Deferred liblzma.so.5
ELF 7d184000-7d18d000 Deferred librt.so.1
ELF 7d18d000-7d1b3000 Deferred libselinux.so.1
ELF 7d1b3000-7d241000 Deferred libsystemd.so.0
ELF 7d241000-7d24a000 Deferred libffi.so.6
ELF 7d24a000-7d263000 Deferred libresolv.so.2
ELF 7d263000-7d268000 Deferred libkeyutils.so.1
ELF 7d268000-7d2c2000 Deferred libdbus-1.so.3
ELF 7d2c2000-7d34e000 Deferred libgmp.so.10
ELF 7d34e000-7d383000 Deferred libhogweed.so.4
ELF 7d383000-7d3bf000 Deferred libnettle.so.6
ELF 7d3bf000-7d3d4000 Deferred libtasn1.so.6
ELF 7d3d4000-7d408000 Deferred libidn.so.11
ELF 7d408000-7d46a000 Deferred libp11-kit.so.0
ELF 7d46a000-7d477000 Deferred libkrb5support.so.0
ELF 7d477000-7d4a8000 Deferred libk5crypto.so.3
ELF 7d4a8000-7d57f000 Deferred libkrb5.so.3
ELF 7d57f000-7d6d7000 Deferred libgnutls.so.30
ELF 7d6d7000-7d729000 Deferred libgssapi_krb5.so.2
ELF 7d729000-7d7b0000 Deferred libcups.so.2
ELF 7d7da000-7d80f000 Deferred uxtheme<elf>
\-PE 7d7e0000-7d80f000 \ uxtheme
ELF 7d80f000-7d816000 Deferred libxfixes.so.3
ELF 7d816000-7d821000 Deferred libxcursor.so.1
ELF 7d821000-7d834000 Deferred libxi.so.6
ELF 7d834000-7d838000 Deferred libxcomposite.so.1
ELF 7d838000-7d845000 Deferred libxrandr.so.2
ELF 7d845000-7d851000 Deferred libxrender.so.1
ELF 7d851000-7d858000 Deferred libxxf86vm.so.1
ELF 7d858000-7d85c000 Deferred libxinerama.so.1
ELF 7d85c000-7d863000 Deferred libxdmcp.so.6
ELF 7d863000-7d867000 Deferred libxau.so.6
ELF 7d867000-7d88d000 Deferred libxcb.so.1
ELF 7d88d000-7d9d8000 Deferred libx11.so.6
ELF 7d9d8000-7d9ed000 Deferred libxext.so.6
ELF 7d9ee000-7d9f3000 Deferred libcom_err.so.2
ELF 7d9f3000-7da07000 Deferred libavahi-client.so.3
ELF 7da07000-7da15000 Deferred libavahi-common.so.3
ELF 7da17000-7daa4000 Deferred winex11<elf>
\-PE 7da20000-7daa4000 \ winex11
ELF 7dc2a000-7dc53000 Deferred libexpat.so.1
ELF 7dc53000-7dc9c000 Deferred libfontconfig.so.1
ELF 7dcbe000-7dce9000 Deferred libpng12.so.0
ELF 7dce9000-7dd99000 Deferred libfreetype.so.6
ELF 7dd99000-7ddbc000 Deferred libtinfo.so.5
ELF 7ddbc000-7dde2000 Deferred libncurses.so.5
ELF 7de0c000-7de30000 Deferred imm32<elf>
\-PE 7de10000-7de30000 \ imm32
ELF 7de30000-7de55000 Deferred iphlpapi<elf>
\-PE 7de40000-7de55000 \ iphlpapi
ELF 7de55000-7de81000 Deferred netapi32<elf>
\-PE 7de60000-7de81000 \ netapi32
ELF 7de81000-7deb1000 Deferred secur32<elf>
\-PE 7de90000-7deb1000 \ secur32
ELF 7deb1000-7dedb000 Deferred msacm32<elf>
\-PE 7dec0000-7dedb000 \ msacm32
ELF 7dedb000-7df93000 Deferred winmm<elf>
\-PE 7dee0000-7df93000 \ winmm
ELF 7df93000-7dfb5000 Deferred oleacc<elf>
\-PE 7dfa0000-7dfb5000 \ oleacc
ELF 7dfb5000-7dfcd000 Deferred wtsapi32<elf>
\-PE 7dfc0000-7dfcd000 \ wtsapi32
ELF 7dfcd000-7dff4000 Deferred mpr<elf>
\-PE 7dfd0000-7dff4000 \ mpr
ELF 7dff4000-7e00f000 Deferred libz.so.1
ELF 7e024000-7e039000 Deferred dhcpcsvc<elf>
\-PE 7e030000-7e039000 \ dhcpcsvc
ELF 7e039000-7e0b0000 Deferred wininet<elf>
\-PE 7e040000-7e0b0000 \ wininet
ELF 7e0b0000-7e14c000 Deferred urlmon<elf>
\-PE 7e0c0000-7e14c000 \ urlmon
ELF 7e14c000-7e164000 Deferred userenv<elf>
\-PE 7e150000-7e164000 \ userenv
ELF 7e164000-7e291000 Deferred oleaut32<elf>
\-PE 7e180000-7e291000 \ oleaut32
ELF 7e291000-7e376000 Deferred comdlg32<elf>
\-PE 7e2a0000-7e376000 \ comdlg32
ELF 7e376000-7e3b2000 Deferred winspool<elf>
\-PE 7e380000-7e3b2000 \ winspool
ELF 7e3b2000-7e3c6000 Deferred psapi<elf>
\-PE 7e3c0000-7e3c6000 \ psapi
ELF 7e3c6000-7e407000 Deferred usp10<elf>
\-PE 7e3d0000-7e407000 \ usp10
ELF 7e407000-7e4d4000 Deferred crypt32<elf>
\-PE 7e410000-7e4d4000 \ crypt32
ELF 7e4d4000-7e50f000 Deferred winhttp<elf>
\-PE 7e4e0000-7e50f000 \ winhttp
ELF 7e50f000-7e543000 Deferred ws2_32<elf>
\-PE 7e520000-7e543000 \ ws2_32
ELF 7e543000-7e5bf000 Deferred rpcrt4<elf>
\-PE 7e550000-7e5bf000 \ rpcrt4
ELF 7e5bf000-7e6ee000 Deferred ole32<elf>
\-PE 7e5e0000-7e6ee000 \ ole32
ELF 7e6ee000-7e7e3000 Deferred comctl32<elf>
\-PE 7e700000-7e7e3000 \ comctl32
ELF 7e7e3000-7e859000 Deferred shlwapi<elf>
\-PE 7e7f0000-7e859000 \ shlwapi
ELF 7e859000-7ea82000 Deferred shell32<elf>
\-PE 7e870000-7ea82000 \ shell32
ELF 7ea82000-7eaee000 Deferred advapi32<elf>
\-PE 7ea90000-7eaee000 \ advapi32
ELF 7eaee000-7ec05000 Deferred gdi32<elf>
\-PE 7eb00000-7ec05000 \ gdi32
ELF 7ec05000-7ed53000 Deferred user32<elf>
\-PE 7ec20000-7ed53000 \ user32
ELF 7ef53000-7ef66000 Deferred libnss_files.so.2
ELF 7ef66000-7ef81000 Deferred libnsl.so.1
ELF 7ef81000-7efd6000 Deferred libm.so.6
ELF 7efe7000-7f000000 Deferred version<elf>
\-PE 7eff0000-7f000000 \ version
ELF f737a000-f737f000 Deferred libdl.so.2
ELF f737f000-f7535000 Dwarf libc.so.6
ELF f7536000-f7553000 Deferred libpthread.so.0
ELF f7553000-f7560000 Deferred libnss_nis.so.2
ELF f7573000-f757d000 Deferred libnss_compat.so.2
ELF f757d000-f7732000 Dwarf libwine.so.1
ELF f7734000-f7759000 Deferred ld-linux.so.2
ELF f775b000-f775c000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
0000000e services.exe
0000001e 0
0000001d 0
00000014 0
00000010 0
0000000f 0
00000012 winedevice.exe
0000001c 0
00000019 0
00000017 0
00000013 0
0000001a plugplay.exe
00000020 0
0000001f 0
0000001b 0
00000018 ModOrganizer.exe
00000041 0
0000003c 0
00000040 0
00000033 0
00000032 0
00000034 0
00000035 0
0000002e 0
0000002c explorer.exe
00000037 0
00000036 0
00000021 (D) C:\users\yarden\Downloads\LOOT.0.9.0-0-g44a0d85.32.bit\LOOT.exe
00000022 0 <==
System information:
Wine build: wine-1.6.2
Platform: i386 (WOW64)
Host system: Linux
Host version: 4.4.0-22-generic
抱歉令人作呕的格式化,这是我第一次发帖提问,而且我真的不知道如何格式化
答案 0 :(得分:0)
Wine不支持所有Windows应用程序。您是否尝试在单声道中打开.exe文件? (包 - monodevelop)
答案 1 :(得分:0)
您的程序试图调用名为KERNEL32.DLL
的{{1}}函数。详细记录了该函数here。 Wine是一项正在进行的工作,并非每个DLL都实现了所有功能。
尽管我的葡萄酒黑客时代已经过去了,但是查看这个功能的文档似乎并不难实现。您最好的选择是进入葡萄酒开发论坛并在那里提出您的问题。我知道,如果我已经检查过Wine代码库并且补丁等待提交,那么我很可能也会把这个修复程序归为一类。
另外,尝试从源代码中查看最新版本的Wine并进行编译。可能有人已经实现了这个功能,但它尚未进入稳定版本。
编辑添加: Wine开发人员选择实现哪些功能的方式是通过查看程序实际调用哪些函数。在我看来,在Wine论坛中获得解决方案似乎很可能。