web-dev-qa-db-ja.com

Wineでアプリケーションを実行できません。 Wineに詳しい人に問題を教えてください。

そこで、WebアプリケーションであるDiscord Bot Makerを実行しようとしています。これは、コマンドwine "Discord Bot Maker.exe"を実行したときにターミナルに表示されるものです。

fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:module:load_library unsupported flag(s) used (flags: 0x00000800)
fixme:system:SetProcessDPIAware stub!
wine: Unhandled page fault on read access to 0x00000004 at address 0x440c49 (thread 0009), starting debugger...

また、ログを保存するというボタンでWineを開きます。これは次のようになります。

Unhandled exception: page fault on read access to 0x00000004 in 32-bit code (0x00440c49).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00440c49 ESP:0032fbb8 EBP:0032fbe4 EFLAGS:00010246(  R- --  I  Z- -P- )
 EAX:00000000 EBX:00000000 ECX:00000000 EDX:0032fbdc
 ESI:00000000 EDI:7b478da0
Stack dump:
0x0032fbb8:  00000003 00000000 7b478da0 00753090
0x0032fbc8:  007530a4 007530a4 004042f1 00000000
0x0032fbd8:  00000000 00000000 00000014 0032fbfc
0x0032fbe8:  00440bbc 00000064 00000000 00000064
0x0032fbf8:  00000064 0032fc1c 00440273 0032fc48
0x0032fc08:  00752358 00751ca0 7b410000 00000001
Backtrace:
=>0 0x00440c49 in discord bot maker (+0x40c49) (0x0032fbe4)
  1 0x00440bbc in discord bot maker (+0x40bbb) (0x0032fbfc)
  2 0x00440273 in discord bot maker (+0x40272) (0x0032fc1c)
  3 0x0040662e in discord bot maker (+0x662d) (0x0032fc30)
  4 0x0040496e in discord bot maker (+0x496d) (0x0032fcac)
  5 0x004041ec in discord bot maker (+0x41eb) (0x0032fde4)
  6 0x00458768 in discord bot maker (+0x58767) (0x0032fe30)
  7 0x7b4605fc call_process_entry+0xb() in kernel32 (0x0032fe48)
  8 0x7b461644 in kernel32 (+0x51643) (0x0032fe88)
  9 0x7bc8090c call_thread_func_wrapper+0xb() in ntdll (0x0032fea8)
  10 0x7bc838dd call_thread_func+0xfc() in ntdll (0x0032ffa8)
  11 0x7bc808ea RtlRaiseException+0x21() in ntdll (0x0032ffc8)
  12 0x7bc52913 call_dll_entry_point+0x3d2() in ntdll (0x0032ffe8)
  13 0xf7610b7d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
  14 0xf7610ce0 wine_switch_to_stack+0x1f() in libwine.so.1 (0xffe2bfd8)
  15 0x7bc5891e LdrInitializeThunk+0x24d() in ntdll (0xffe2c028)
  16 0x7b46777a __wine_kernel_init+0xa69() in kernel32 (0xffe2d198)
  17 0x7bc597f3 __wine_process_init+0x152() in ntdll (0xffe2d208)
  18 0xf760ed37 wine_init+0x2c6() in libwine.so.1 (0xffe2d268)
  19 0x7c000ac2 main+0x81() in <wine-loader> (0xffe2d6b8)
  20 0xf7431637 __libc_start_main+0xf6() in libc.so.6 (0x00000000)
0x00440c49: cmpw    0x4(%ecx),%ax
Modules:
Module  Address         Debug info  Name (67 modules)
PE    400000-  52e000   Export          discord bot maker
PE   1c20000- 1c91000   Deferred        nw_elf
ELF 7b400000-7b7e0000   Dwarf           kernel32<elf>
  \-PE  7b410000-7b7e0000   \               kernel32
ELF 7bc00000-7bcf6000   Dwarf           ntdll<elf>
  \-PE  7bc10000-7bcf6000   \               ntdll
ELF 7c000000-7c004000   Dwarf           <wine-loader>
ELF 7e073000-7e097000   Deferred        imm32<elf>
  \-PE  7e080000-7e097000   \               imm32
ELF 7e107000-7e131000   Deferred        libexpat.so.1
ELF 7e131000-7e17a000   Deferred        libfontconfig.so.1
ELF 7e17a000-7e1a5000   Deferred        libpng12.so.0
ELF 7e1a5000-7e1c0000   Deferred        libz.so.1
ELF 7e1c0000-7e270000   Deferred        libfreetype.so.6
PE  7e28b000-7e29f000   Deferred        api-ms-win-core-localization-obs
PE  7e290000-7e29f000   Deferred        api-ms-win-core-localization-obsC:\windows\system32\api-ms-win-core-localization-obsolete-l1-2-0.dll
ELF 7e29f000-7e2b3000   Deferred        api-ms-win-core-datetime-l1-1-1<
PE  7e2a0000-7e2b3000   Deferred        api-ms-win-core-datetime-l1-1-1
ELF 7e2b3000-7e2c7000   Deferred        api-ms-win-core-string-l1-1-0<el
PE  7e2c0000-7e2c7000   Deferred        api-ms-win-core-string-l1-1-0
PE  7e2c7000-7e2dc000   Deferred        api-ms-win-core-localization-l1-
PE  7e2d0000-7e2dc000   Deferred        api-ms-win-core-localization-l1-C:\windows\system32\api-ms-win-core-localization-l1-2-1.dll
ELF 7e2dc000-7e2f0000   Deferred        api-ms-win-core-fibers-l1-1-1<el
PE  7e2e0000-7e2f0000   Deferred        api-ms-win-core-fibers-l1-1-1
ELF 7e2f0000-7e313000   Deferred        libtinfo.so.5
ELF 7e313000-7e339000   Deferred        libncurses.so.5
ELF 7e340000-7e354000   Deferred        api-ms-win-core-synch-l1-2-0<elf
PE  7e350000-7e354000   Deferred        api-ms-win-core-synch-l1-2-0
ELF 7e354000-7e487000   Deferred        oleaut32<elf>
  \-PE  7e370000-7e487000   \               oleaut32
ELF 7e487000-7e4a4000   Deferred        jsproxy<elf>
  \-PE  7e490000-7e4a4000   \               jsproxy
ELF 7e4a4000-7e4e0000   Deferred        winhttp<elf>
  \-PE  7e4b0000-7e4e0000   \               winhttp
ELF 7e4e0000-7e50b000   Deferred        msacm32<elf>
  \-PE  7e4f0000-7e50b000   \               msacm32
ELF 7e50b000-7e58b000   Deferred        rpcrt4<elf>
  \-PE  7e520000-7e58b000   \               rpcrt4
ELF 7e58b000-7e6c4000   Deferred        ole32<elf>
  \-PE  7e5a0000-7e6c4000   \               ole32
ELF 7e6c4000-7e77c000   Deferred        winmm<elf>
  \-PE  7e6d0000-7e77c000   \               winmm
ELF 7e77c000-7e796000   Deferred        version<elf>
  \-PE  7e780000-7e796000   \               version
ELF 7e796000-7e8c6000   Deferred        gdi32<elf>
  \-PE  7e7a0000-7e8c6000   \               gdi32
ELF 7e8c6000-7ea1b000   Deferred        user32<elf>
  \-PE  7e8e0000-7ea1b000   \               user32
ELF 7ea1b000-7ea92000   Deferred        shlwapi<elf>
  \-PE  7ea30000-7ea92000   \               shlwapi
ELF 7ea92000-7ecd4000   Deferred        Shell32<elf>
  \-PE  7eaa0000-7ecd4000   \               Shell32
ELF 7ecd4000-7ed4b000   Deferred        advapi32<elf>
  \-PE  7ece0000-7ed4b000   \               advapi32
ELF 7ef4b000-7ef5e000   Deferred        libnss_files.so.2
ELF 7ef5e000-7ef6b000   Deferred        libnss_nis.so.2
ELF 7ef6b000-7ef86000   Deferred        libnsl.so.1
ELF 7ef86000-7ef90000   Deferred        libnss_compat.so.2
ELF 7ef90000-7efe5000   Deferred        libm.so.6
ELF 7efec000-7f000000   Deferred        psapi<elf>
  \-PE  7eff0000-7f000000   \               psapi
ELF f7414000-f7419000   Deferred        libdl.so.2
ELF f7419000-f75cf000   Dwarf           libc.so.6
ELF f75d0000-f75ed000   Deferred        libpthread.so.0
ELF f7608000-f77bf000   Dwarf           libwine.so.1
ELF f77c1000-f77e6000   Deferred        ld-linux.so.2
ELF f77e8000-f77e9000   Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) Z:\home\user\DBM\discord bot maker.exe
    00000009    0 <==
0000000e services.exe
    00000020    0
    0000001f    0
    00000014    0
    00000010    0
    0000000f    0
00000012 winedevice.exe
    0000001c    0
    00000019    0
    00000018    0
    00000013    0
0000001d plugplay.exe
    00000022    0
    00000021    0
    0000001e    0
00000023 Explorer.exe
    00000028    0
    00000027    0
    00000026    0
    00000025    0
    00000024    0
System information:
    Wine build: wine-2.0.2
    Platform: i386 (WOW64)
    Version: Windows XP
    Host system: Linux
    Host version: 4.10.0-33-generic
2
John Cena

そのイメージでは、オペレーティングシステムのビットをキャッチします

Unhandled exception: page fault on read access to 0x00000004 in 32-bit 
code (0x00440c49).

そして、私たちがキャッチするより

Wine build: wine-2.0.2
Platform: i386 (WOW64)
Version: Windows XP

イメージアップで、WOW64を取得しました。OS64ビットにワインをインストールする必要があると思います。ただし、OS 32ビットにワインをインストールします。

新しいプレフィックスを開始する場合(つまり、Ubuntuの新規インストール)、いくつかの特別なことを行う必要があります。

# Move the old prefix (if one exists)  
# You could rm -rf it if you don't want it.    
mv ~/.wine/ ~/oldwine/    

# Create prefix with rightarch, per
# http://wiki.winehq.org/FAQ#32_bit_wineprefix   
WINEARCH=win32 winecfg

以上です。まだ存在しない別のプレフィックスを指定する場合を除き、WINEARCHを再度設定する必要はありません。

そして最終的に、Wine64が成熟するにつれて、これはますます関連性の低いものになるはずです。 Wine64は32ビットアプリケーションを実行できるはずです。

私の参照: 64ビットUbuntuに32ビットワインをインストールする方法?

1