Avogadro on Wine gives page fault error

Questions about Wine on Linux
Locked
xorinet
Newbie
Newbie
Posts: 2
Joined: Sat Aug 21, 2021 8:36 pm

Avogadro on Wine gives page fault error

Post by xorinet »

Hello. I am running wine-6.15. I have installed Avogadro from the win32 .exe file available from the official website. I use a win32 wineprefix set to Windows 10.
However, when I run Avogadro, it fails to work properly. I am able to place one atom, but when I attempt to place the second one, Wine crashes with the following error:

Code: Select all

Unhandled exception: page fault on read access to 0x8010c497 in 32-bit code (0x72abb2d3).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:72abb2d3 ESP:002189c0 EBP:72c57a7e EFLAGS:00210297(  R- --  I S -A-P-C)
 EAX:0000000e EBX:78db6c5c ECX:70fb7040 EDX:8010c483
 ESI:70fb7040 EDI:00000000
Stack dump:
0x002189c0:  78db6c5c 78db6c5c 70fb7040 f7d45ef9
0x002189d0:  00000031 f7eb0738 ffffffd0 00000000
0x002189e0:  00000040 00000000 f7eb0738 00000000
0x002189f0:  7c7bb5b8 00000000 00000005 00000040
0x00218a00:  70fba218 0000005b 00000003 72c57a7e
0x00218a10:  6f077560 f7eb0700 70fba8d0 0000006e
Backtrace:
=>0 0x72abb2d3 (0x72c57a7e)
  1 0x7500087b (0x8010c483)
0x72abb2d3: movl	0x14(%edx),%edi
Modules:
Module	Address			Debug info	Name (118 modules)
PE	  350000-  3df000	Deferred        rpcrt4
PE	  3e0000-  3f4000	Deferred        zlib1
PE	  400000-  4df000	Deferred        avogadro
PE	  4e0000-  643000	Deferred        comctl32
PE	  650000-  70c000	Deferred        winmm
PE	  710000-  7fe000	Deferred        msvcp100
PE	  800000-  8be000	Deferred        avogadro
PE	 1540000- 1547000	Deferred        atomindexcolor
PE	 1570000- 1577000	Deferred        chargecolor
PE	 1580000- 1589000	Deferred        customcolor
PE	 1590000- 1597000	Deferred        distancecolor
PE	 15a0000- 15ab000	Deferred        residuecolor
PE	 15b0000- 15bb000	Deferred        smartscolor
PE	 15c0000- 15ce000	Deferred        axesengine
PE	 15d0000- 15e9000	Deferred        cartoonengine
PE	 15f0000- 15fc000	Deferred        dipoleengine
PE	 1600000- 1607000	Deferred        forceengine
PE	 1610000- 161d000	Deferred        hbondengine
PE	 1620000- 1635000	Deferred        labelengine
PE	 1640000- 1647000	Deferred        polygonengine
PE	 1760000- 1774000	Deferred        qtaimengine
PE	 1780000- 178e000	Deferred        ribbonengine
PE	 1790000- 179b000	Deferred        ringengine
PE	 17a0000- 17a7000	Deferred        simplewireengine
PE	 17b0000- 17bb000	Deferred        sphereengine
PE	 17c0000- 17cc000	Deferred        stickengine
PE	 17d0000- 17e3000	Deferred        surfaceengine
PE	 17f0000- 17fc000	Deferred        wireengine
PE	 1800000- 181f000	Deferred        animationextension
PE	 1820000- 1837000	Deferred        cartesianextension
PE	 1840000- 18c9000	Deferred        crystallographyextension
PE	 18d0000- 18de000	Deferred        fileimportextension
PE	 18e0000- 1904000	Deferred        forcefieldextension
PE	 1910000- 1962000	Deferred        gamessextension
PE	 1970000- 1987000	Deferred        gl2psextension
PE	 1990000- 1997000	Deferred        h2methylextension
PE	 19a0000- 19a9000	Deferred        hydrogensextension
PE	 19b0000- 1a30000	Deferred        inputfileextension
PE	 1a30000- 1a45000	Deferred        insertdnaextension
PE	 1a50000- 1a66000	Deferred        insertfragmentextension
PE	 1a70000- 1a8c000	Deferred        insertpeptideextension
PE	 1a90000- 1a97000	Deferred        invertchiralextension
PE	 1aa0000- 1aae000	Deferred        molecularpropextension
PE	 1ab0000- 1abb000	Deferred        networkfetchextension
PE	 1ac0000- 1ae1000	Deferred        orbitalextension
PE	 1af0000- 1b3b000	Deferred        avogadro_openqube
PE	 1b40000- 1b84000	Deferred        orcaextension
PE	 1b90000- 1ba7000	Deferred        povrayextension
PE	 1bb0000- 1bcd000	Deferred        propextension
PE	 1bd0000- 1c14000	Deferred        qtaimextension
PE	 1c20000- 1c2b000	Deferred        selectextension
PE	 1c30000- 1c46000	Deferred        shaderextension
PE	 1c50000- 1c92000	Deferred        spectraextension
PE	 1ca0000- 1cb0000	Deferred        supercellextension
PE	 1cb0000- 1cce000	Deferred        surfaceextension
PE	 1cd0000- 1ce8000	Deferred        swcntbuilderextension
PE	 1cf0000- 1d07000	Deferred        vibrationextension
PE	 1d10000- 1d25000	Deferred        vrmlextension
PE	 1d30000- 1d3d000	Deferred        aligntool
PE	 1d40000- 1d53000	Deferred        autoopttool
PE	 1d60000- 1d6b000	Deferred        autorotatetool
PE	 1d70000- 1d85000	Deferred        bondcentrictool
PE	 1d90000- 1d9b000	Deferred        clickmeasuretool
PE	 1da0000- 1db6000	Deferred        drawtool
PE	 1dc0000- 1dd7000	Deferred        manipulatetool
PE	 1de0000- 1df2000	Deferred        selectrotatetool
PE	 2020000- 202b000	Deferred        formats_cairo.obf
PE	 2030000- 207c000	Deferred        formats_common.obf
PE	 2080000- 213d000	Deferred        inchi
PE	 2140000- 21c9000	Deferred        formats_compchem.obf
PE	 21d0000- 22df000	Deferred        formats_misc.obf
PE	 22e0000- 2308000	Deferred        formats_utility.obf
PE	 2310000- 233f000	Deferred        formats_xml.obf
PE	 2340000- 243a000	Deferred        libxml2
PE	 2440000- 246b000	Deferred        plugin_charges.obf
PE	 2470000- 2480000	Deferred        plugin_descriptors.obf
PE	 2480000- 2494000	Deferred        plugin_fingerprints.obf
PE	 24a0000- 2515000	Deferred        plugin_forcefields.obf
PE	 2520000- 2550000	Deferred        plugin_ops.obf
PE	 2850000- 285d000	Deferred        userenv
PE	10000000-101cd000	Deferred        openbabel-2
PE	61740000-61782000	Deferred        advapi32
PE	62aa0000-62b01000	Deferred        glew32
PE	63000000-630c2000	Deferred        qtopengl4
PE	63480000-6348c000	Deferred        version
PE	63bc0000-63bd9000	Deferred        shcore
PE	64000000-64106000	Deferred        qtnetwork4
PE	64a40000-64a95000	Deferred        shlwapi
PE	64ec0000-64fec000	Deferred        oleaut32
PE	65000000-65837000	Deferred        qtgui4
PE	67000000-6727f000	Deferred        qtcore4
PE	67780000-677aa000	Deferred        glu32
PE	68500000-6855b000	Deferred        combase
PE	68700000-6872f000	Deferred        uxtheme
PE	69180000-69190000	Deferred        wsock32
PE	69a00000-69a12000	Deferred        wintab32
PE	6a040000-6a062000	Deferred        msacm32
PE	6a280000-6a32b000	Deferred        msvcrt
PE	6a400000-6a531000	Deferred        ole32
PE	6b080000-6b148000	Deferred        msvcr100
PE	6bc00000-6bc2a000	Deferred        sechost
PE	6bcc0000-6bd40000	Deferred        setupapi
PE	6c9c0000-6cc56000	Deferred        gdi32
PE	6d780000-6d7a7000	Deferred        ws2_32
PE	6e4c0000-6e4d5000	Deferred        dnsapi
PE	6ed00000-6ef24000	Deferred        user32
PE	6f480000-6f48b000	Deferred        nsi
PE	70b40000-70c1f000	Deferred        ucrtbase
PE	70d00000-70e0a000	Deferred        comdlg32
PE	71200000-7121b000	Deferred        imm32
PE	7a840000-7a844000	Deferred        opengl32
PE	7b000000-7b0e8000	Deferred        kernelbase
PE	7b600000-7b81b000	Deferred        kernel32
PE	7bc00000-7bc9c000	Deferred        ntdll
PE	7cd10000-7cd14000	Deferred        iphlpapi
PE	7d880000-7d884000	Deferred        winex11
PE	7da40000-7e317000	Deferred        shell32
PE	7e980000-7e98b000	Deferred        winspool
Threads:
process  tid      prio (all id:s are in hex)
00000020 (D) Z:\home\xorinet\.wine\drive_c\Program Files (x86)\Avogadro\bin\avogadro.exe
	00000024    0 <==
	000000f8    0
	000000fc    0
	00000108    0
00000038 services.exe
	0000003c    0
	00000040    0
	0000004c    0
	00000068    0
	00000074    0
	000000a4    0
	000000c0    0
	000000d4    0
00000044 winedevice.exe
	00000048    0
	00000054    0
	00000058    0
	0000005c    0
00000060 winedevice.exe
	00000064    0
	0000006c    0
	00000070    0
	00000080    0
	00000084    0
	00000088    0
00000078 explorer.exe
	0000007c    0
	00000098    0
	0000009c    0
0000008c plugplay.exe
	00000090    0
	000000ac    0
	000000b0    0
	000000b4    0
000000b8 svchost.exe
	000000bc    0
	000000c4    0
	000000c8    0
000000cc rpcss.exe
	000000d0    0
	000000d8    0
	000000dc    0
	000000e0    0
	000000e4    0
	000000e8    0
000000f0 conhost.exe
	000000f4    0
System information:
    Wine build: wine-6.15
    Platform: i386
    Version: Windows 10
    Host system: Linux
    Host version: 5.13.10-arch1-1
Terminal output:

Code: Select all

[xorinet@compyooter ~]$ env WINEPREFIX=/home/xorinet/.local/share/wineprefixes/wine32 wine "/home/xorinet/.wine/drive_c/Program Files (x86)/Avogadro/bin/avogadro.exe"
0024:fixme:heap:RtlSetHeapInformation 00000000 1 00000000 0 stub
0024:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0021FC60 63 English) semi-stub
0024:fixme:msvcp:locale__Locimp__Makexloc (0021FC60 63 00FED6D8 00000000) semi-stub
0024:fixme:msvcp:locale__Locimp__Makewloc (0021FC60 63 00FED6D8 00000000) semi-stub
0024:fixme:msvcp:locale__Locimp__Makeushloc (0021FC60 63 00FED6D8 00000000) semi-stub
OpenGL capabilities found:
        Double Buffering.
        Direct Rendering.
        Antialiasing.
0024:err:module:import_dll Library libcairo-2.dll (which is needed by L"Z:\\home\\xorinet\\.wine\\drive_c\\Program Files (x86)\\Avogadro\\bin\\formats_cairo.obf") not found
==============================
*** Open Babel Warning  in OpenBabel::OBGlobalDataBase::Init
  Cannot open element.txt defaulting to compiled data.
0024:fixme:wgl:X11DRV_wglGetPixelFormatAttribivARB unsupported 2008 WGL Attribute
0024:fixme:wgl:X11DRV_wglGetPixelFormatAttribivARB unsupported 2008 WGL Attribute
0024:fixme:imm:NotifyIME IMC_SETCANDIDATEPOS
0024:fixme:imm:ImmReleaseContext (000100C6, 026D3C50): stub
0024:fixme:win:FlashWindowEx 0021EEB4 - semi-stub
0024:fixme:win:FlashWindowEx 0021F344 - semi-stub
wine: Unhandled page fault on read access to 8010C497 at address 72ABB2D3 (thread 0024), starting debugger...
010c:fixme:dc:DeleteDC not deleting busy DC 01410079 refcount 2
I see the error with libcairo-2.dll, however I cannot find anywhere to download it from/any way to add it to Wine somehow to make it work (as said in the FAQ).
Is there any way to fix this problem?

Thank you very much in advance.
Time4Tea
Level 3
Level 3
Posts: 56
Joined: Sat Apr 25, 2020 11:32 am

Re: Avogadro on Wine gives page fault error

Post by Time4Tea »

I'm not an expert, but that libcairo-2.dll might be the issue. It looks like you can download a copy from www.dll-files.com. Might be worth a try?

You could also try searching in the application install directories to see if that dll is included somewhere, but just isn't being found by Wine.
jkfloris
Level 12
Level 12
Posts: 3201
Joined: Thu Aug 14, 2014 10:10 am

Re: Avogadro on Wine gives page fault error

Post by jkfloris »

WINEPREFIX=/home/xorinet/.local/share/wineprefixes/wine32 wine /home/xorinet/.wine/drive_c/...
Does the program work if you install and run it in the wineprefix?

Why don't you use the native Linux version of avogadro?
User avatar
DarkShadow44
Level 9
Level 9
Posts: 1338
Joined: Tue Nov 22, 2016 5:39 pm

Re: Avogadro on Wine gives page fault error

Post by DarkShadow44 »

Time4Tea wrote: Sun Aug 22, 2021 7:26 am I'm not an expert, but that libcairo-2.dll might be the issue. It looks like you can download a copy from www.dll-files.com. Might be worth a try?
Please don't download random DLLs from somewhere.

I managed to reproduce the issue and opened a bug report for this at https://bugs.winehq.org/show_bug.cgi?id=51678

Seconding the usage of the official Linux version, though.
jkfloris
Level 12
Level 12
Posts: 3201
Joined: Thu Aug 14, 2014 10:10 am

Re: Avogadro on Wine gives page fault error

Post by jkfloris »

Strange. I can't reproduce this bug.
Debian Sid, nvidia 470.57
User avatar
DarkShadow44
Level 9
Level 9
Posts: 1338
Joined: Tue Nov 22, 2016 5:39 pm

Re: Avogadro on Wine gives page fault error

Post by DarkShadow44 »

@jkfloris
Interesting, it works for me with LIBGL_ALWAYS_SOFTWARE=1. Some driver shenanigans going on here.
Time4Tea
Level 3
Level 3
Posts: 56
Joined: Sat Apr 25, 2020 11:32 am

Re: Avogadro on Wine gives page fault error

Post by Time4Tea »

DarkShadow44 wrote: Wed Aug 25, 2021 11:27 am Please don't download random DLLs from somewhere.
Why not? In what way is it 'random', if it's a specific DLL the application is flagging as missing?

I was under the impression that using actual Windows DLLs can be a valid way to resolve some issues in Wine.
User avatar
DarkShadow44
Level 9
Level 9
Posts: 1338
Joined: Tue Nov 22, 2016 5:39 pm

Re: Avogadro on Wine gives page fault error

Post by DarkShadow44 »

Time4Tea wrote: Wed Aug 25, 2021 1:19 pm Why not? In what way is it 'random'? I was under the impression that using actual Windows DLLs can be a valid way to resolve some issues in Wine.
Sure, but you need to know what you're doing and get it from a safe place. When missing a dll that is not included in windows, that's not the solution. Also keep in mind that those dll sites could provide anything, you never know what you're getting.
Time4Tea
Level 3
Level 3
Posts: 56
Joined: Sat Apr 25, 2020 11:32 am

Re: Avogadro on Wine gives page fault error

Post by Time4Tea »

DarkShadow44 wrote: Wed Aug 25, 2021 1:23 pm Sure, but you need to know what you're doing and get it from a safe place. When missing a dll that is not included in windows, that's not the solution. Also keep in mind that those dll sites could provide anything, you never know what you're getting.
Ok. Yes, I agree that you need to be careful about where you get them from. I would always run something like that through an anti-virus check as a precaution. Still, as long as you're careful, it doesn't seem like it would hurt to give it a try.
xorinet
Newbie
Newbie
Posts: 2
Joined: Sat Aug 21, 2021 8:36 pm

Re: Avogadro on Wine gives page fault error

Post by xorinet »

DarkShadow44 wrote: Wed Aug 25, 2021 12:42 pm @jkfloris
Interesting, it works for me with LIBGL_ALWAYS_SOFTWARE=1. Some driver shenanigans going on here.
Wow. Very interesting indeed, that instantly fixed my problem. I was trying to mess around with the dll files, haha. Didn't realise that I just had to set that variable.
Thank you very much for your help!
User avatar
DarkShadow44
Level 9
Level 9
Posts: 1338
Joined: Tue Nov 22, 2016 5:39 pm

Re: Avogadro on Wine gives page fault error

Post by DarkShadow44 »

Eh, that switches to software rendering instead of using the GPU. Hardly a solution, but might be a temporary workaround.
Locked