I'm terrible at bug hunting, so please bear with me. I also don't know how to pass on information only, so this will be in story form and rambling. Sorry about that. Thanks in advance to anyone who bothers.
---
App in question: DxO Optics Pro 8. Or 9. This is a photography workflow app, in between your importing/tagging/sorting and your printing or editing. Primarily it applies lens distortion corrections as it's name implies. It does other neat stuff too, and if we get it working, you can see firsthand, as free licenses are available from DxO for versions older than 2 releases from the current via various means, usually photography magazines includes.
I'm starting with 8.x, the oldest that supports my cameras, assuming it'd be easiest to support. Version 10 is also "free" from various magazines and places, but 10 is 64-bit only and this PC is ancient. How ancient? A Dell Inspiron 640m laptop from 2006 or so. 32-bit Core Duo T-2060 @ 1.60GHz w/ 4 Gig (~3.3G addressable) RAM and the ubiquitous Intel 945GM, running Fedora 26 i686 PAE + MATE desktop.
As most have posted to various linux sites, trying to install DxO stuff, the installer itself crashes.
Frustrated, I start stabbing blindly. I install and update this and that. Mono, gecko, native installs for DX9, MSXML3 & Query, .NET 2/3/4, basically every winetricks tweak that might be remotely applicable, and basically can't get much farther than a stuck window. Never gets any output other than tons of console scroll. What a mess. I surrender.
-----
Weeks pass, and I take another stab at it. Deciding to be more methodical, I booted into the factory Vista partition (hurrah for laziness!) and installed the app; it runs just fine. After updating and grabbing all the lens profiles, I copied all the DxO related stuff to bypass the installer in linux; the Program Files tree, the AppData tree, and exported the relevant registry keys.
I wipe out all that mess from before, install Fedora 26's packages of wine 2.15-staging. I also update the whole system, and start with a nice blank WINEPREFIX. (well, not blank, but "fresh" I guess is the term? No fancy build scripts just 'rm -rf ~/.wine-dxo-testing && WINEPREFIX=/home/aperture/.wine-dxo-testing wineboot -i') CSMT and all other options on the "Staging" tab in winecfg are disabled.
Hey! The installer finishes without error!! I noticed that during the install it installs a DX9 runtime; upon investigation it's d3dx9_42. Regardless, it completed so I'm getting excited... finally get to try!
'WINEPREFIX=/home/aperture/.wine-dxo-testing wine DXOOpticsPro.exe'
... and it crashes. :^) Some spawned process 'oclcheck.exe' segfaults. But in the background... the DxO Optics Pro splash screen appears. For a second. Problem seems to be .NET:
Code: Select all
fixme:mscoree:parse_startup useLegacyV2RuntimeActivationPolicy=L"true" not implemented
fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.0" not implemented
The entry point method could not be loaded due to Could not load file or assembly 'PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. assembly:PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 type:<unknown type> member:<none>
My random guess is, it needs the real thing? So after a (semi-)quick 'winetricks dotnet462' and all the workarounds;
--** thank you, Austin! (and all other maintainers.) **--
I fire it up... oclcheck.exe still crashes*, but behind the crash debug window, the the app really tries to run! Doesn't get far. I get the splash screen, then a form where it asks for your serial # or to run in trial mode (all rendered beautifully and exactly as on Windows), then pops up an error has occurred dialog - but at least from inside the app, internal error handler caught it. To me this is progress!
There's a button on the oops we crashed form for "view report", but clicking it doesn't generate a crash report that I can see; doesn't appear to do anything but scroll the console. I do notice these two lines go by:
Code: Select all
fixme:dbghelp:elf_search_auxv can't find symbol in module
fixme:dbghelp:MiniDumpWriteDump NIY MiniDumpWithHandleData
But OK, anyway, app still doesn't work and I'm too dumb to know the next step. I don't even know if what I did was the right approach. Other than trying (1) 9.x and seeing if the requirements are more wine-compatible, and (2) removing wine-opencl to hopefully stop the oclcheck.exe segfault... I'm running out of steam again.
Any ideas appreciated.
------------------------
The app: (directly linked from DxO for integrity but I obfuscated the link because BOTS SUCK!)
download(hyphen)center.dxo.com/v8/Win/DxO_OpticsPro8_Setup.{*{remove.all.this.to.download.and.fix.the.hyphen.]*]exe
------------------------
wine bits installed:
wine-fonts-2.15-1.fc26.noarch
wine-symbol-fonts-2.15-1.fc26.noarch
wine-common-2.15-1.fc26.noarch
wine-desktop-2.15-1.fc26.noarch
wine-mono-4.7.1-1.fc26.noarch
wine-twain-2.15-1.fc26.i686
wine-small-fonts-2.15-1.fc26.noarch
wine-ldap-2.15-1.fc26.i686
wine-ms-sans-serif-fonts-2.15-1.fc26.noarch
wine-openal-2.15-1.fc26.i686
wine-system-fonts-2.15-1.fc26.noarch
wine-capi-2.15-1.fc26.i686
wine-2.15-1.fc26.i686
wine-systemd-2.15-1.fc26.noarch
wine-courier-fonts-2.15-1.fc26.noarch
wine-alsa-2.15-1.fc26.i686
wine-arial-fonts-2.15-1.fc26.noarch
wine-pulseaudio-2.15-1.fc26.i686
wine-marlett-fonts-2.15-1.fc26.noarch
wine-opencl-2.15-1.fc26.i686
wine-tahoma-fonts-2.15-1.fc26.noarch
wine-core-2.15-1.fc26.i686
wine-filesystem-2.15-1.fc26.noarch
wine-cms-2.15-1.fc26.i686
wine-times-new-roman-fonts-2.15-1.fc26.noarch
wine-wingdings-fonts-2.15-1.fc26.noarch
mingw32-wine-gecko-2.47-2.fc26.noarch
wine-fixedsys-fonts-2.15-1.fc26.noarch
mono bits installed:
mono-core-4.8.0-7.fc26.i686
mono-mvc-4.8.0-7.fc26.i686
mono-extras-4.8.0-7.fc26.i686
mono-winforms-4.8.0-7.fc26.i686
mono-data-sqlite-4.8.0-7.fc26.i686
mono-data-4.8.0-7.fc26.i686
mono-basic-4.6-3.fc26.i686
mono-wcf-4.8.0-7.fc26.i686
mono-web-4.8.0-7.fc26.i686
winetricks list-installed:
Using winetricks 20170823-next with wine-2.15 (Staging) and WINEARCH=win32
dotnet40
dotnet452
dotnet45
dotnet461
dotnet462
dotnet46
------------------------
* you will notice in the crash log it parses:
Code: Select all
INFO [DxOFramework] Running oclcheck with cache file: C:\users\aperture\Local Settings\Application Data\DxO_Labs\DxO Optics Pro 8\ocl32.cache...
Further, clinfo, an native linux app that displays your GPU's OpenCL support level, segfaults when you run it on a SandyBridge or anything older, because apparently the technology didn't exist on Intel on-chip GPUs and something somewhere doesn't do proper checks, so if this is at the driver-level (libcl.so? see console log) then the oclcheck.exe might be crashing for the same reason.
Not too worried about that app anyway, since the main thread keeps going, hopefully it is not part of the problem, as again, the app works just fine in Vista and there's definitely no OpenCL support on this relic.
======================================
Whew. Told you it'd be a long boring story. Sorry. And thanks for reading!