sudo-give-me-coffee / wine32-deploy

A tool to creating AppImages for 32-bit Microsoft Windows® applications
Other
61 stars 2 forks source link

"test" works, packaged AppImage doesn't. #17

Closed Leseratte10 closed 4 years ago

Leseratte10 commented 4 years ago

I have a proprietary closed-source Windows app that I'm trying to package with this tool.

I went through all the steps in the readme, and ./Wine-4.21-x86_64.AppImage test MyTool correctly runs my Windows app on Linux. Packaging it into an AppImage with ./Wine-4.21-x86_64.AppImage package MyTool also works without errors, but when I start the resulting AppImage, wine starts, takes a second, and exits again without printing any errors.

Is there any additional debug logging I could activate to find the difference between testing mode and packaging mode?

sudo-give-me-coffee commented 4 years ago

Is there any additional debug logging I could activate to find the difference between testing mode and packaging mode?

If you don't minimized yet, you can export the environment variable:

WINEDEBUG=+all

Before running your application

sudo-give-me-coffee commented 4 years ago

However you can pass

--keep-registry

When creating AppDir, this probably will solve this issue, example of usage:

./Wine-4.21-x86_64.AppImage create-appdir MyTool --keep-registry
sudo-give-me-coffee commented 4 years ago

Also, did your application uses DirectX or any 3D resource?

Leseratte10 commented 4 years ago

I tried using WINEDEBUG=+all which gave me a whole bunch of logs, but unfortunately nothing that helps me fix the issue. I am already using --keep-registry. As far as I know, the Application doesn't use DirectX.

sudo-give-me-coffee commented 4 years ago

Sorry for taking so long to answer, could you please run this and send me the output ?:

export HOME=$(mktemp -d)
unset XDG_CONFIG_HOME
./MyTool-x86_64.AppImage
Leseratte10 commented 4 years ago

Nothing changed when I do that.

However I noticed something else: When I call "create-bottle" there are the following errors:

$ ./Wine-5.7-x86_64.AppImage create-bottle MyTool
[ 1/6 ] Creating basic structure...
[ 2/6 ] Creating prefix...
Could not find Wine Gecko. HTML rendering will be disabled.
wine: configuration in L"/opt/wine32-deploy/MyTool/prefix" has been updated.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
[ 3/5 ] Creating a backup of registry...
cp: Aufruf von stat für 'MyTool/prefix/system.reg' nicht möglich: Datei oder Verzeichnis nicht gefunden
[ 4/6 ] Extracting fonts...
[ 5/6 ] Copying KupoFL theme...
[ 6/6 ] All steps is done!

("Die Datei '' wurde nicht gefunden" is german and translates to "file '' not found"). Same for the cp call - "Calling stat on MyTool/prefix/system.reg not possible: File or Directory not found".

Then during the create-appdir there's the following errors:

[ 1/8 ] Creating AppDir...
[ 2/8 ] Copying Wine...
        This will take a while...
[ 3/8 ] Copying bottle...
        This will take a while...
[ 4/8 ] Removing unecessary data...
[ 5/8 ] Getting added keys to registry...
diff: MyTool.AppDir/system.reg.orig: Datei oder Verzeichnis nicht gefunden
rm: das Entfernen von 'MyTool.AppDir/system.reg.orig' ist nicht möglich: Datei oder Verzeichnis nicht gefunden
[ 6/8 ] Deduplicating files...
[ 7/8 ] Creating AppRun...
[ 8/8 ] All AppDir Creation steps is done

"Datei oder Verzeichnis nicht gefunden" = "File or Directory not found" "das Entfernen von X ist nicht möglich" = "Cannot remove X".

I don't know if these errors might be the reason why the AppImage doesn't work. When I run the AppImage with the commands you stated, this is the output:

$ ./MyTool-x86_64.AppImage 
wine: failed to update L"\\??\\Z:\\tmp\\tmp.G0X6sYbfej\\.config\\MyTool" with L"\\\\?\\Z:\\tmp\\.mount_MyTool26XYSX\\lib\\..\\bin\\..\\share\\wine\\wine.inf": No such file or directory
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
regedit: Die Datei '' wurde nicht gefunden.
001b:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\wineusb": c0000142
wine: failed to update L"\\??\\Z:\\tmp\\tmp.G0X6sYbfej\\.config\\MyTool" with L"\\\\?\\Z:\\tmp\\.mount_MyTool26XYSX\\lib\\..\\bin\\..\\share\\wine\\wine.inf": No such file or directory
ERROR: ld.so: object '/tmp/.mount_MyTool26XYSX/bin/libhookexecv.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/tmp/.mount_MyTool26XYSX/bin/libhookexecv.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
sudo-give-me-coffee commented 4 years ago

Which linux distro you is using?

Leseratte10 commented 4 years ago

Just tried in my home directory, same error messages, same issue. I did set the main executable, and I am using Ubuntu 20.04.

probonopd commented 4 years ago

Just a wild guess, could it make a difference if you set the language environment variables on the command line from German to English before running this tool? Maybe some script has issues with parsing non-English output?

sudo-give-me-coffee commented 4 years ago

Well, that's what @probonopd said, the problem is with wine, so the only thing I can do is force English as a language, on AppImage:

https://github.com/sudo-give-me-coffee/wine32-deploy/blob/3d6a994ec0cf54480711b17e268c6e59966905d8/data/WineAppRun.sh#L24

sudo-give-me-coffee commented 4 years ago

@Leseratte10 can you test with last commit?

Leseratte10 commented 4 years ago

Unfortunately, that didn't help. I tried both with the latest commit and no other change; and with the latest commit and LC_ALL=C in my environment; same issue.

sudo-give-me-coffee commented 4 years ago

Can you send me the installer please?

sudo-give-me-coffee commented 4 years ago

Closing this because no response was sent