Has anyone gotten PCStitch to work on wine?

Questions about Wine on Linux
Locked
bgladx64
Newbie
Newbie
Posts: 3
Joined: Wed Jul 26, 2017 2:23 am

Has anyone gotten PCStitch to work on wine?

Post by bgladx64 »

I'm trying to run PCStitch 10 (cross stitching design software) on wine and it installs fine, but after the installation when you go to run the program, it checks for updates, succeeds at that, then tries to launch for real and crashes.

I've installed vcrun6 (including mfc42.dll) via winetricks. My next idea is to try installing dotnet and see if that helps. If all else fails I can run it in a virtual machine but I'd rather run it via wine.

Here is the complete failure log:

Code: Select all

fixme:winediag:start_process Wine Staging 2.12 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
Stacktrace:


=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

wine: Unhandled page fault on read access to 0x00000000 at address (nil) (thread 0009), starting debugger...
Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x00000000).
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported constant (parameter) line in function
fixme:dbghelp_dwarf:dwarf2_parse_variable Unsupported constant (parameter) opcode in function
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00000000 ESP:0032f64c EBP:0032f678 EFLAGS:00210246(  R- --  I  Z- -P- )
 EAX:00000000 EBX:0032f95c ECX:00000000 EDX:0000000a
 ESI:04b3a078 EDI:0020eee4
Stack dump:
0x0032f64c:  048100fd 04b3a078 0020eee4 04b04558
0x0032f65c:  0032f680 0032f95c 00cd3580 00000000
0x0032f66c:  0032f698 00000000 00cd3580 0032f698
0x0032f67c:  047efff4 04b3a078 00cd6a60 00000001
0x0032f68c:  0032f6c8 05b3f280 0032f6c8 0032f6c8
0x0032f69c:  05b3f280 00cd5cd8 00cd6a60 01f92380
Backtrace:
=>0 0x00000000 (0x0032f678)
  1 0x047efff4 (0x0032f698)
  2 0x05b3f280 (0x0032f6c8)
  3 0x05b3c0f6 (0x0032f798)
  4 0x05b3baac (0x0032f7c8)
  5 0x003d1b60 (0x0032f818)
  6 0x003d1297 (0x0032f848)
  7 0x6c54d391 mono_jit_runtime_invoke+0x160(method=0x9bd240, obj=0x0(nil), params=0x32f90c, exc=<is not available>, error=0x32f95c) [/vagrant/mono/mono/mini/mini-runtime.c:2535] in libmono-2.0-x86 (0x009776a8)
  8 0x6c6fde33 in libmono-2.0-x86 (+0x1bde32) (0x0032f90c)
  9 0x6c701b68 in libmono-2.0-x86 (+0x1c1b67) (0x0032fe08)
  10 0x6c5b2182 mono_jit_exec+0xc1(domain=0x975160, assembly=0x9bd8b0, argc=0x1, argv=0x12a910) [/vagrant/mono/mono/mini/driver.c:1034] in libmono-2.0-x86 (0x0032fe08)
  11 0x7ed8c7ae _CorExeMain+0x37d() in mscoree (0x0032fe08)
  12 0x7b45f6e9 call_process_entry+0x18() in kernel32 (0x0032fe38)
  13 0x7b4608bd in kernel32 (+0x508bc) (0x0032fe88)
  14 0x7bca300c call_thread_func_wrapper+0xb() in ntdll (0x0032feb8)
  15 0x7bca6099 call_thread_func+0xa8() in ntdll (0x0032ffa8)
  16 0x7bca2fea RtlRaiseException+0x21() in ntdll (0x0032ffc8)
  17 0x7bc75353 call_dll_entry_point+0x412() in ntdll (0x0032ffe8)
  18 0xf755f01d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
  19 0xf755f180 wine_switch_to_stack+0x1f() in libwine.so.1 (0xffa95678)
  20 0x7bc7bf24 LdrInitializeThunk+0x383() in ntdll (0xffa956e8)
  21 0x7b466baf __wine_kernel_init+0xa4e() in kernel32 (0xffa965d8)
  22 0x7bc7cf0b __wine_process_init+0x16a() in ntdll (0xffa96648)
  23 0xf755d283 wine_init+0x2a2() in libwine.so.1 (0xffa96698)
  24 0x7c000cd8 main+0x97() in <wine-loader> (0xffa96ae8)
  25 0xf7372276 __libc_start_main+0xf5() in libc.so.6 (0x00000000)
0x00000000: -- no code accessible --
Modules:
Module	Address			Debug info	Name (144 modules)
PE	  3f0000-  3fa000	Deferred        accessibility
PE	  400000-  85a000	Deferred        pcstitch 10
PE	 1b80000- 1f2e000	Deferred        mscorlib
PE	 20c0000- 234a000	Deferred        system
PE	 2350000- 23ac000	Deferred        microsoft.visualbasic
PE	 23b0000- 2418000	Deferred        system.drawing
PE	 2420000- 242a000	Deferred        interop.xtremeskinframework
PE	 2430000- 2442000	Deferred        axinterop.xtremecommandbars
PE	 2450000- 245c000	Deferred        axinterop.xtremedockingpane
PE	 2460000- 24a6000	Deferred        interop.xtremecommandbars
PE	 24b0000- 24b8000	Deferred        axinterop.xtremeskinframework
PE	 24c0000- 24da000	Deferred        interop.xtremedockingpane
PE	 24e0000- 24f6000	Deferred        interop.xtremetaskpanel
PE	 2510000- 254f000	Deferred        pcs7
PE	 2660000- 2682000	Deferred        pcstitch common
PE	 2690000- 26a2000	Deferred        system.management
PE	 26b0000- 276a000	Deferred        system.web.services
PE	 2770000- 2794000	Deferred        system.configuration
PE	 27f0000- 2844000	Deferred        mono.security
PE	 31d0000- 32ce000	Deferred        system.core
PE	 33f0000- 36f8000	Deferred        system.xml
PE	 3900000- 3be8000	Deferred        system.web
PE	 44b0000- 44ea000	Deferred        mono.posix
PE	 4940000- 4a0d000	Deferred        code~et4
PE	 5b40000- 5d46000	Deferred        code~ckc
PE	 5d50000- 5dd1000	Deferred        code~gqu
PE	 5ef0000- 5fac000	Deferred        code~gkz
PE	10000000-102c8000	Deferred        system.windows.forms
PE	5f400000-5f4f2000	Deferred        mfc42
PE	6c540000-6d33c000	Dwarf           libmono-2.0-x86
ELF	7b400000-7b7ea000	Dwarf           kernel32<elf>
  \-PE	7b410000-7b7ea000	\               kernel32
ELF	7bc00000-7bd21000	Dwarf           ntdll<elf>
  \-PE	7bc40000-7bd21000	\               ntdll
ELF	7c000000-7c004000	Dwarf           <wine-loader>
ELF	7cd89000-7ce00000	Deferred        wininet<elf>
  \-PE	7cd90000-7ce00000	\               wininet
ELF	7d03a000-7d100000	Deferred        windowscodecs<elf>
  \-PE	7d050000-7d100000	\               windowscodecs
ELF	7d207000-7d222000	Deferred        imagehlp<elf>
  \-PE	7d210000-7d222000	\               imagehlp
ELF	7d222000-7d24a000	Deferred        mpr<elf>
  \-PE	7d230000-7d24a000	\               mpr
ELF	7d24a000-7d272000	Deferred        propsys<elf>
  \-PE	7d250000-7d272000	\               propsys
ELF	7d272000-7d300000	Deferred        gdiplus<elf>
  \-PE	7d280000-7d300000	\               gdiplus
ELF	7d663000-7d66a000	Deferred        libnss_dns.so.2
ELF	7d66a000-7d682000	Deferred        libresolv.so.2
ELF	7d682000-7d6ac000	Deferred        iphlpapi<elf>
  \-PE	7d690000-7d6ac000	\               iphlpapi
ELF	7d6ac000-7d73a000	Deferred        libgmp.so.10
ELF	7d73a000-7d770000	Deferred        libhogweed.so.4
ELF	7d770000-7d7ad000	Deferred        libnettle.so.6
ELF	7d7ad000-7d7c2000	Deferred        libtasn1.so.6
ELF	7d7c2000-7d7f6000	Deferred        libidn.so.11
ELF	7d7f6000-7d858000	Deferred        libp11-kit.so.0
ELF	7d858000-7da1d000	Deferred        libgnutls.so.30
ELF	7da29000-7da40000	Deferred        olepro32<elf>
  \-PE	7da30000-7da40000	\               olepro32
ELF	7da40000-7db0d000	Deferred        crypt32<elf>
  \-PE	7da50000-7db0d000	\               crypt32
ELF	7db0d000-7db2a000	Deferred        bcrypt<elf>
  \-PE	7db10000-7db2a000	\               bcrypt
ELF	7db2a000-7db69000	Deferred        rsaenh<elf>
  \-PE	7db30000-7db69000	\               rsaenh
ELF	7db69000-7db87000	Deferred        fusion<elf>
  \-PE	7db70000-7db87000	\               fusion
ELF	7db87000-7dc3f000	Deferred        winmm<elf>
  \-PE	7db90000-7dc3f000	\               winmm
ELF	7dc3f000-7dc53000	Deferred        psapi<elf>
  \-PE	7dc40000-7dc53000	\               psapi
ELF	7dc53000-7dd84000	Deferred        oleaut32<elf>
  \-PE	7dc70000-7dd84000	\               oleaut32
ELF	7dd84000-7ddbe000	Deferred        ws2_32<elf>
  \-PE	7dd90000-7ddbe000	\               ws2_32
ELF	7ddbe000-7de81000	Deferred        msvcrt<elf>
  \-PE	7ddd0000-7de81000	\               msvcrt
ELF	7dec7000-7deff000	Deferred        uxtheme<elf>
  \-PE	7ded0000-7deff000	\               uxtheme
ELF	7deff000-7df06000	Deferred        libxfixes.so.3
ELF	7df06000-7df12000	Deferred        libxcursor.so.1
ELF	7df15000-7df1e000	Deferred        libffi.so.6
ELF	7df1e000-7df33000	Deferred        mswsock<elf>
  \-PE	7df20000-7df33000	\               mswsock
ELF	7df83000-7dfad000	Deferred        libexpat.so.1
ELF	7dfad000-7dff0000	Deferred        libfontconfig.so.1
ELF	7dff0000-7e02a000	Deferred        libpng16.so.16
ELF	7e02a000-7e0de000	Deferred        libfreetype.so.6
ELF	7e0de000-7e0f1000	Deferred        libxi.so.6
ELF	7e0f1000-7e0f5000	Deferred        libxcomposite.so.1
ELF	7e0f5000-7e102000	Deferred        libxrandr.so.2
ELF	7e102000-7e10e000	Deferred        libxrender.so.1
ELF	7e10e000-7e115000	Deferred        libxxf86vm.so.1
ELF	7e115000-7e11e000	Deferred        librt.so.1
ELF	7e11e000-7e13a000	Deferred        libbsd.so.0
ELF	7e13a000-7e141000	Deferred        libxdmcp.so.6
ELF	7e141000-7e16d000	Deferred        libxcb.so.1
ELF	7e16d000-7e2bb000	Deferred        libx11.so.6
ELF	7e2bb000-7e2d0000	Deferred        libxext.so.6
ELF	7e2d0000-7e35c000	Deferred        winex11<elf>
  \-PE	7e2e0000-7e35c000	\               winex11
ELF	7e35c000-7e380000	Deferred        imm32<elf>
  \-PE	7e360000-7e380000	\               imm32
ELF	7e380000-7e3a3000	Deferred        libtinfo.so.5
ELF	7e3a3000-7e3c9000	Deferred        libncurses.so.5
ELF	7e3ec000-7e46d000	Deferred        rpcrt4<elf>
  \-PE	7e400000-7e46d000	\               rpcrt4
ELF	7e46d000-7e5a4000	Deferred        ole32<elf>
  \-PE	7e480000-7e5a4000	\               ole32
ELF	7e5a4000-7e6a0000	Deferred        comctl32<elf>
  \-PE	7e5b0000-7e6a0000	\               comctl32
ELF	7e6a0000-7e6bb000	Deferred        aclui<elf>
  \-PE	7e6b0000-7e6bb000	\               aclui
ELF	7e6bb000-7e733000	Deferred        advapi32<elf>
  \-PE	7e6d0000-7e733000	\               advapi32
ELF	7e733000-7e85f000	Deferred        gdi32<elf>
  \-PE	7e740000-7e85f000	\               gdi32
ELF	7e85f000-7e9b4000	Deferred        user32<elf>
  \-PE	7e870000-7e9b4000	\               user32
ELF	7e9b4000-7ea2b000	Deferred        shlwapi<elf>
  \-PE	7e9c0000-7ea2b000	\               shlwapi
ELF	7ea2b000-7ecf3000	Deferred        shell32<elf>
  \-PE	7ea40000-7ecf3000	\               shell32
ELF	7ecf3000-7ed0e000	Deferred        libz.so.1
ELF	7ed0e000-7ed73000	Deferred        dbghelp<elf>
  \-PE	7ed20000-7ed73000	\               dbghelp
ELF	7ed73000-7eda9000	Dwarf           mscoree<elf>
  \-PE	7ed80000-7eda9000	\               mscoree
ELF	7ef44000-7ef57000	Deferred        libnss_files.so.2
ELF	7ef57000-7ef64000	Deferred        libnss_nis.so.2
ELF	7ef64000-7ef7e000	Deferred        libnsl.so.1
ELF	7ef7e000-7ef88000	Deferred        libnss_compat.so.2
ELF	7ef88000-7efdd000	Deferred        libm.so.6
ELF	7efde000-7efe2000	Deferred        libxinerama.so.1
ELF	7efe2000-7efe6000	Deferred        libxau.so.6
ELF	7efe6000-7f000000	Deferred        version<elf>
  \-PE	7eff0000-7f000000	\               version
ELF	f7355000-f735a000	Deferred        libdl.so.2
ELF	f735a000-f7512000	Dwarf           libc.so.6
ELF	f7512000-f752f000	Deferred        libpthread.so.0
ELF	f7552000-f7722000	Dwarf           libwine.so.1
ELF	f7725000-f774a000	Deferred        ld-linux.so.2
ELF	f774c000-f774d000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\Program Files\PCStitch 10\PCStitch 10.exe
	["C:\Program Files\PCStitch 10\PCStitch 10.exe"]
	00000037    0
	00000036    0
	00000035    0
	00000034    0
	00000033    0
	00000032    0
	00000031    0
	00000030    0
	0000002f    0
	00000009    0 <==
0000000e services.exe
	[C:\windows\system32\services.exe]
	00000028    0
	00000025    0
	00000020    0
	0000001a    0
	00000015    0
	00000012    0
	0000000f    0
00000010 explorer.exe
	[C:\windows\system32\explorer.exe /desktop]
	0000002e    0
	0000002d    0
	0000002c    0
	00000011    0
00000013 winedevice.exe
	[C:\windows\system32\winedevice.exe]
	0000001f    0
	00000019    0
	00000018    0
	00000014    0
0000001d plugplay.exe
	[C:\windows\system32\plugplay.exe]
	00000022    0
	00000021    0
	0000001e    0
00000023 winedevice.exe
	[C:\windows\system32\winedevice.exe]
	0000002b    0
	00000027    0
	00000026    0
	00000024    0
0000003a explorer.exe
	[C:\windows\system32\explorer.exe /desktop]
	0000003e    0
	0000003d    0
	0000003c    0
	0000003b    0
System information:
    Wine build: wine-2.12 (Staging)
    Platform: i386
    Version: Windows 7
    Host system: Linux
    Host version: 4.9.0-3-amd64

User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Has anyone gotten PCStitch to work on wine?

Post by Bob Wya »

I could get PCStitch 10 to work with:

Code: Select all

winetricks winxp
winetricks -q dotnet20sp2 vcrun6
winetricks -q ie8 # <--- not sure if that's necessary - YMMV!!
tested using Wine Staging 2.13 with a 32-bit Wineprefix set to Windows XP.

Screenshot as proof!
PC Stich 10.jpg
Bob
bgladx64
Newbie
Newbie
Posts: 3
Joined: Wed Jul 26, 2017 2:23 am

Re: Has anyone gotten PCStitch to work on wine?

Post by bgladx64 »

After I made my post, I played around with it some more: installed vcrun6 and dotnet30 in a 32bit WinXP wineprefix and got it working.

I still have two issues though and I wonder if you've seen the same thing, have any experience fixing them, or any ideas:

1. The first time I launch PCStitch, it works fine. If I close it and try to launch it again, it crashes on launch. I investigated and learned that clearing out the folder "Application Data/PCStitch 10/" fixes the problem and it loads fine again. Of course this means that I lose any information in the Application Data folder. I set up a script to launch PCStitch and clear out that folder first, but I'd rather not have to do that. Have you seen this issue?

2. This is an intermittent issue. The right-click menu in the PCStitch designer works fine normally, but after using the right-click menu anywhere from 2-20 times, when I right-click again the program will crash and I'll have to relaunch it. Do you have any idea what's going on here?
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Has anyone gotten PCStitch to work on wine?

Post by Bob Wya »

bgladx64 wrote:After I made my post, I played around with it some more: installed vcrun6 and dotnet30 in a 32bit WinXP wineprefix and got it working.

I still have two issues though and I wonder if you've seen the same thing, have any experience fixing them, or any ideas:

1. The first time I launch PCStitch, it works fine. If I close it and try to launch it again, it crashes on launch. I investigated and learned that clearing out the folder "Application Data/PCStitch 10/" fixes the problem and it loads fine again. Of course this means that I lose any information in the Application Data folder. I set up a script to launch PCStitch and clear out that folder first, but I'd rather not have to do that. Have you seen this issue?

2. This is an intermittent issue. The right-click menu in the PCStitch designer works fine normally, but after using the right-click menu anywhere from 2-20 times, when I right-click again the program will crash and I'll have to relaunch it. Do you have any idea what's going on here?
I wouldn't recommend installing a .Net framework version higher than is actually required...
You only need .Net 2.0 sp2 in this instance.
If the necessary framework version isn't available - the application won't even start.

Yes the application is totally unstable - I can confirm this.
Often this happens when using the native .Net frameworks. :cry:

Feel free to file a WineHQ bug - otherwise I'll probably get round to this next week at some point (too busy just now)...
.Net 2.0 generally works OK - so it may be a fixable issue...

Bob
bgladx64
Newbie
Newbie
Posts: 3
Joined: Wed Jul 26, 2017 2:23 am

Re: Has anyone gotten PCStitch to work on wine?

Post by bgladx64 »

How can you tell which dotnet version an application requires? I just arbitrarily picked dotnet30 since it was before I read your reply, but ya it'd be nice to know which specific one is best.

I couldn't deal with the right click crashing bug so I'm just running it in a VM for now. Some of the bugs are still present in the VM, so I guess PCStitch itself is buggy. Right click works fine at least though :P
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Has anyone gotten PCStitch to work on wine?

Post by Bob Wya »

bgladx64 wrote:How can you tell which dotnet version an application requires? I just arbitrarily picked dotnet30 since it was before I read your reply, but ya it'd be nice to know which specific one is best. ...
I use the readpe command - from the pev toolkit - to give me some basic info about a Windows executable.
However this will only tell you if an application depends on the .Net frameworks - not the actual version.

If you find an application crash with wine-mono (typically: mscoree.dll - related errors) - then uninstall wine-mono.
Re-run the application.
Typically - for newer .Net frameworks - applications will complain that blah, blah isn't installed... E.g. missing .Net Frameworks 4.0.1.39.
Applications which depend only on .Net frameworks 2.0 and earlier tend not to complain about missing libraries... These are assumed to be pre-installed...
A bit of a "Heath Robinson" approach - but it works for me!

Since Wine support for the .Net frameworks libraries is so flaky it's definitely best to install the minimum version you require only.

Bob
Locked