Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Completely lost as to why WINE will not work across envs
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gamers & Players
View previous topic :: View next topic  
Author Message
tmrwthumbdown
n00b
n00b


Joined: 07 Aug 2024
Posts: 2

PostPosted: Wed Aug 07, 2024 5:00 am    Post subject: Completely lost as to why WINE will not work across envs Reply with quote

So I am completely losing my mind regarding WINE. To preface, I used to use Void Linux with glibc and had wine and wine-32bit alongside mesa-dri-32bit installed, and every single game and launcher I used worked perfectly fine with no issues. I used wine-ge-8.26, and they all worked with this custom version.

Over time, I changed over to Gentoo and enjoyed my stay, so I decided to install wine in musl to see if the new experimental WOW64 mode would allow me to game using musl or, at the very least, a no-multilib installation. I was able to setup everything successfully in Gentoo except wine itself. Upon installing wine in musl, I was unable to get quite literally ANYTHING to work properly. For example, the Rockstar Launcher used to have a memory leak on Linux and required an old version. Over time, they fixed this, and now the actual launcher download from Rockstar themselves works perfectly fine for most. I know this because with wine-ge-8.26 on Void, I was able to launch, install, and play games through it. Furthermore, I installed Skyrim via GOG, and that was another game that worked perfectly fine.

After installing Gentoo on musl, I am unable to get ANYTHING to work as I said previously. I have tried wine-ge-8.26, wine-vanilla, and wine-staging. I've tried all three of these differing WINE versions under musl, nomultilib glibc, and glibc. Under all environments and different WINE versions, I receive the same errors and am unable to successfully launch any games. With this confusion in mind, I decided to go back to Void for some testing, and low and behold, the exact same environment I used with success previously no longer works and, in the same way, returns the same warnings and errors preventing me from gaming on Gentoo. Once again, I tested both musl and multilib glibc on Void and still had no success. I would greatly appreciate any help, as I've read multiple posts of people with extremely similar issues and hope that if this is solved for me, it will also allow others to not experience these issues anymore.

To get into specifics exactly, I have tried both compiling custom kernels and gentoo-kernel-bin, and in both, I used the config options CONFIG_IA32_EMULATION=y, CONFIG_IA32_FEAT_CTL=y, CONFIG_COMPAT_32=y, and CONFIG_COMPAT_32BIT_TIME=y. This does not seem to be a kernel config issue. Furthermore, this does not seem to be a multilib 32bit library issue as under Gentoo, I built the entire system with ABI_X86="64 32" from the initial installation, plus WINE itself and all dependencies required of it, and in Void, I installed the same 64bit and 32bit packages required to play that worked for me previously. I have also tested this across multiple versions of WINE, as stated previously, vanilla, staging, and GE, across versions 8.0, 8.02, 8.26, 9.0, 9.12, 9.13, and 9.14 (and, interestingly, 9.13 and 9.14 won't compile for me on Gentoo, but that's a different topic entirely).

After providing all this pretext, I will now provide the entire logs and errors/warnings I presume to be the issues, and I hope others can help me solve this.

With both RDR2 and Skyrim, and with both the new and old versions of the installer, I become stuck on 'Preparing to install' or with Skyrim, the initial cinematic cutscene will not load, and clicking new game causes an infinite loading screen. This is NOT an issue with wine-ge-8.26 with the old launcher version or any version of Skyrim; however, previously under Void, I was able to install the new version of the installer and all Skyrim versions with no issue. Now, I receive preparing to install and new game forever, and with the logs, I have some confusion. It seems as if, for whatever reason, all 22000 lines of warnings indicate that WINE cannot find and subsequently load any important system libraries. To truncate the entire 22k lines, every single error is the same (c0000034), just with different libraries failing to be found.

Code:

    1 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
    2 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
    3 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\kernel32.dll" not found (c000003a)
    4 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernel32.dll" not found (c0000034)
    5 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
    6 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
    7 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
    8 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\kernelbase.dll" not found (c000003a)
    9 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernelbase.dll" not found (c0000034)
   10 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
   11 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\winsxs\\manifests" not found (c000003a)
   12 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.dll" not found                (c0000034)
   13 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.manifest" not found           (c0000034)
   14 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.           Common-Controls.dll" not found (c000003a)
   15 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.           Common-Controls.manifest" not found (c000003a)
   16 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.dll" not found                (c0000034)
   17 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.manifest" not found           (c0000034)
   18 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.           Common-Controls.dll" not found (c000003a)
   19 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.           Common-Controls.manifest" not found (c000003a)
   20 002c:fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls" (6.0.      0.0)
   21 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   22 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   23 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\advapi32.dll" not found (c000003a)
   24 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\advapi32.dll" not found (c0000034)
   25 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   26 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\msvcrt.dll" not found (c0000034)
   27 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\msvcrt.dll" not found (c0000034)
   28 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\msvcrt.dll" not found (c000003a)
   29 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\msvcrt.dll" not found (c0000034)
   30 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\msvcrt.dll" not found (c0000034)
   31 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\sechost.dll" not found (c0000034)
   32 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\sechost.dll" not found (c0000034)
   33 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\sechost.dll" not found (c000003a)
   34 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\sechost.dll" not found (c0000034)
   35 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\sechost.dll" not found (c0000034)
   36 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ucrtbase.dll" not found (c0000034)
   37 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ucrtbase.dll" not found (c0000034)
   38 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\ucrtbase.dll" not found (c000003a)
   39 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\ucrtbase.dll" not found (c0000034)
   40 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ucrtbase.dll" not found (c0000034)
   41 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ws2_32.dll" not found (c0000034)
   42 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ws2_32.dll" not found (c0000034)
   43 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\ws2_32.dll" not found (c000003a)
   44 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\ws2_32.dll" not found (c0000034)
   45 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ws2_32.dll" not found (c0000034)
   46 002c:warn:globalmem:KernelBaseGetGlobalData semi-stub!
   47 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\wininit.ini" not found (c0000034)
   48 002c:warn:file:CreateFileW Unable to create file L"C:\\windows\\wininit.ini" (status c0000034)
   49 002c:warn:profile:PROFILE_Open profile file L"C:\\windows\\wininit.ini" not found
   50 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\dllcache\\" not found (c0000034)
   51 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
   52 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
   53 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\kernel32.dll" not found (c000003a)
   54 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernel32.dll" not found (c0000034)
   55 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernel32.dll" not found (c0000034)
   56 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
   57 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
   58 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\kernelbase.dll" not found (c000003a)
   59 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernelbase.dll" not found (c0000034)
   60 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernelbase.dll" not found (c0000034)
   61 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\services.exe.manifest" not found (c0000034)
   62 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   63 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)


I have tried so many different solutions. It seems as if for whatever reason, no system libraries are able to be located, whether 32-bit or 64-bit. At first, I believed it was a permissions issue; however, I have verified that my directories are properly modded and are attributed to the correct user owners. Furthermore, I have tried changing the WINEPREFIX from the actual game directory (which previously worked) to .wine and other directories to no avail. I've also tried checking /etc/fstab to ensure that noatime or other mount options other than default don't affect this issue, and they don't. I've ensured my drives are properly mounted and fully accessible via the absolute and relative WINE Z drive paths, still to no avail. I doubt anyone will be able to help me solve this, but I am simply completely lost. I would consider myself an advanced user, yet nothing I do solves it, so I hope someone with a more logical understanding of WINE or someone who doesn't have the same tunnel vision I do can help me solve this once and for all so I can happily game on Gentoo alongside any other users with these same issues.

Once again, anyone willing to read this wall of text and help me with this would be my GOD and will be GREATLY APPRECIATED. Thank you very much.
Back to top
View user's profile Send private message
Chiitoo
Administrator
Administrator


Joined: 28 Feb 2010
Posts: 2670
Location: Here and Away Again

PostPosted: Wed Aug 07, 2024 8:50 am    Post subject: Reply with quote

I have no experience with musl, but disregarding that, here are some initial thoughts.

Do you get these warnings when running something like 'winecfg' as well?

What does creating a fresh, new prefix look like terminal output-wise?

WINEPREFIX ('$HOME/.wine' by default) should be pointing to the 'root' of a Wine prefix, not a game or any other directory, and when creating a new one, the directory must not exist.
_________________
Kindest of regardses.
Back to top
View user's profile Send private message
tmrwthumbdown
n00b
n00b


Joined: 07 Aug 2024
Posts: 2

PostPosted: Wed Aug 07, 2024 10:52 pm    Post subject: Reply with quote

Upon creating a brand new, completely fresh prefix via wineboot -i, I receive the same error messages:

Code:

    1 wine: created the configuration directory '/home/user/Games/rdr2'                                                                                                                                                                                   
    2 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
    3 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
    4 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\kernel32.dll" not found (c000003a)
    5 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernel32.dll" not found (c0000034)
    6 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
    7 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
    8 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
    9 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\kernelbase.dll" not found (c000003a)
   10 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\kernelbase.dll" not found (c0000034)
   11 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernelbase.dll" not found (c0000034)
   12 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\winsxs\\manifests" not found (c000003a)
   13 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.dll" not found (c0000034)
   14 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.manifest" not found (c0000034)
   15 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.Common-Controls.dll" not found (c000003a)
   16 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.Common-Controls.manifest" not found (c000003a)
   17 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.dll" not found (c0000034)
   18 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls.manifest" not found (c0000034)
   19 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.Common-Controls.dll" not found (c000003a)
   20 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\Microsoft.Windows.Common-Controls\\Microsoft.Windows.Common-Controls.manifest" not found (c000003a)
   21 002c:fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls" (6.0.0.0)
   22 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   23 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   24 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\advapi32.dll" not found (c000003a)
   25 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\advapi32.dll" not found (c0000034)
   26 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\advapi32.dll" not found (c0000034)
   27 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\msvcrt.dll" not found (c0000034)
   28 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\msvcrt.dll" not found (c0000034)
   29 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\msvcrt.dll" not found (c000003a)
   30 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\msvcrt.dll" not found (c0000034)
   31 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\msvcrt.dll" not found (c0000034)
   32 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\sechost.dll" not found (c0000034)
   33 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\sechost.dll" not found (c0000034)
   34 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\sechost.dll" not found (c000003a)
   35 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\sechost.dll" not found (c0000034)
   36 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\sechost.dll" not found (c0000034)
   37 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ucrtbase.dll" not found (c0000034)
   38 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ucrtbase.dll" not found (c0000034)
   39 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\ucrtbase.dll" not found (c000003a)
   40 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\ucrtbase.dll" not found (c0000034)
   41 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ucrtbase.dll" not found (c0000034)
   42 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ws2_32.dll" not found (c0000034)
   43 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ws2_32.dll" not found (c0000034)
   44 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system\\ws2_32.dll" not found (c000003a)
   45 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\ws2_32.dll" not found (c0000034)
   46 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\ws2_32.dll" not found (c0000034)
   47 002c:warn:globalmem:KernelBaseGetGlobalData semi-stub!
   48 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\wininit.ini" not found (c0000034)
   49 002c:warn:file:CreateFileW Unable to create file L"C:\\windows\\wininit.ini" (status c0000034)
   50 002c:warn:profile:PROFILE_Open profile file L"C:\\windows\\wininit.ini" not found
   51 002c:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\dllcache\\" not found (c0000034)
   52 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)
   53 0034:warn:file:NtCreateFile L"\\??\\C:\\windows\\system32\\kernel32.dll" not found (c0000034)


Furthermore, I've also tried your suggestion of creating the wine prefix via the initialization command instead of creating the directory itself beforehand, and still no luck. Although I know for certain that it should work perfectly fine even if you create the directory beforehand and then try to run wine, as I've done this successfully for years.

I've tried leaving the Z drive set to root at /, and have tried running the command from / as well, still to no avail. I've also tried setting it manually to other directories, such as the prefix directory itself, which shouldn't work in theory and should not be required at all, as I've never had to modify the Z drives directory path before. It really seems like for some odd reason it is just completely unable to access these files that I have verified exist and are in the right directories with the proper symlinks.

Also, the root of my wine prefixes has always been in a user-created directory called Games and are separated from each other for compatibility reasons (e.g., Games/rdr2, Games/skyrim, etc.). and this has also always worked, but even having the wineprefix pointing to .wine in $HOME doesn't solve the issue unfortunately.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22392

PostPosted: Wed Aug 07, 2024 10:55 pm    Post subject: Reply with quote

What does strace report about the process that prints these error messages? That would show us what paths it is actually passing to the kernel, and what value the kernel returns.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Thu Aug 08, 2024 7:20 am    Post subject: Reply with quote

So after spending a few hours reading over the strace output, I am even more stumped than I was before. I noticed that I was receiving vfat ioctl errors and, over time, narrowed it down to my efi partition. For some reason (I'm assuming maybe a BIOS update???) the behavior of mkfs.fat changed for me. Beforehand, I could do mkfs.fat, and it would always automatically select FAT32; however, for some reason now it automatically selects FAT16, and I was not aware of this. Normally, you shouldn't have to specify it since it automatically determines the best fit for the drive and sector size (mine being 4096); however, since it's now choosing FAT16, obviously something external has changed causing this issue. Regardless, upon trying to set it to FAT32 manually, I received an error I have never seen before, basically saying that there aren't enough clusters to satisfy the filesystem creation and, therefore, would not let me boot off my EFI partition even when it said it was set to FAT32. Now this may sound weird, but for a few reasons I have always chosen to make my EFI partition 10M, and regardless of how silly some may think that is, it has never been a problem for me with a custom kernel. Apparently, to reach the FAT32 required minimum cluster size, I had to set my EFI partition size to not 128M, not 256M, but exactly 257M or higher; otherwise, it would not let me create a FAT32 filesystem properly without the error. I hope to understand and resolve this over time, but as of now, I'm stumped on that end.

So moving forward with my 257M FAT32 EFI partition, I thought that logically, that was the solution, as Windows 10 and up don't support FAT16. However, upon reinstallation of both Gentoo and Void again, I still receive the same issues, now with a different but functionally identical ioctl error (not a TTY). Anyway, I'm still lost and am more confused than I was hours ago. Here is the strace log. I don't doubt you or others here will be able to isolate the issue from the log better than I could.

It seems like the specific call that fails is:
Code:
stat("/home/user/Games/rdr2/dosdevices/z:/home/user/Downloads/kernel32.dll", 0x7ffffe0feed0) = -1 ENOENT (No such file or directory)


It seems as if for whatever reason, and even after confirming my Z drive is set to root at /, it still searches my user Downloads directory for it for whatever reason.

The remaining strace log is here: https://privatebin.net/?94d711b6c9875e42#GVPSRaPjHfP6pzKBtECa6rQzHx2gXgiHBA2zTJGNocWs


Last edited by tmrwthumbdown2 on Sat Aug 10, 2024 12:11 am; edited 1 time in total
Back to top
View user's profile Send private message
Chiitoo
Administrator
Administrator


Joined: 28 Feb 2010
Posts: 2670
Location: Here and Away Again

PostPosted: Thu Aug 08, 2024 7:27 am    Post subject: Reply with quote

I know nothing about EFI, but what file system are you using Wine itself on? Or rather where the prefix directories live.

I'll look into the strace later, but here's what I was typing before the most recent post.

As a sidey-note, a pastebin with no JavaScript requirement will be preferred by many users around here. :]

tmrwthumbdown wrote:
Furthermore, I've also tried your suggestion of creating the wine prefix via the initialization command instead of creating the directory itself beforehand, and still no luck. Although I know for certain that it should work perfectly fine even if you create the directory beforehand and then try to run wine, as I've done this successfully for years.

My memory had me believe that there was an error message in the past, if Wine did not get to create the prefix directory, but thinking about it now, and testing it out, it probably doesn't make all that much sense, and my memory might have been thinking of how you can not "change bitness" of a prefix (going from 64-bit to 32-bit only for example).

I did notice that if even an empty file exists in the directory, the registry files are not created on the initial run (they are created when running something like 'winecfg' though).

Would still advocate for the directory to not exist, as I think it at least might help in avoiding mishaps of sorts.

tmrwthumbdown wrote:
I've tried leaving the Z drive set to root at /, and have tried running the command from / as well, still to no avail. I've also tried setting it manually to other directories, such as the prefix directory itself, which shouldn't work in theory and should not be required at all, as I've never had to modify the Z drives directory path before.

The 'Z' and any other links like it can normally be removed with no ill effects. In fact, I tend to create new prefixes via 'winetricks sandbox' which removes them (though there is a bit of an issue with it that may cause Wine not to update the prefix properly after version changes (removing the '.update-timestamp' from the prefix helps with that)).

Additionally, removing the link to the filesystem root, and not creating another one specifically for the purpose, will mean that Wine will not find the mono/gecko packages if installed system-wide, and will offer downloading them into the prefix instead.


tmrwthumbdown wrote:
It really seems like for some odd reason it is just completely unable to access these files that I have verified exist and are in the right directories with the proper symlinks.

Also, the root of my wine prefixes has always been in a user-created directory called Games and are separated from each other for compatibility reasons (e.g., Games/rdr2, Games/skyrim, etc.). and this has also always worked, but even having the wineprefix pointing to .wine in $HOME doesn't solve the issue unfortunately.

I tend to use a separate prefix for most things as well, and that is perfectly fine, if not recommended even, since some applications may require workarounds that others will not like.

I feel like I have seen something like this before, but my memory will need some poking to get to it, I maybe guess, but it certainly is peculiar that the same thing happens with Void Linux now as well.

In addition to 'strace', I might try running with 'WINEDEBUG="file"'.

Also, does 'winecfg' and such run OK?

Let's use 'wine-vanilla' for any further testing, and please add the output of 'emerge --info wine-vanilla' for the version you pick.
_________________
Kindest of regardses.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Sat Aug 10, 2024 12:10 am    Post subject: Reply with quote

Basically, I have done some more testing and figured out a few things. Basically, I can run 64-bit games, it seems like, as Outer Wilds works perfectly fine on glibc and musl using wine-vanilla on Gentoo. Furthermore, winecfg works perfectly fine yet still shows the same error messages in the output log as any other game. Interestingly, the Rockstar Launcher actually opens up to preparing to install, then freezes, and Skyrim will skip the opening intro cutscene, and I can see the main menu alongside hearing the music; it's just when I click on a new game that it also infinitely loads like the Rockstar Launcher.

Also, here is the wine version information.
Code:

 1 Portage 3.0.65 (python 3.12.5-final-0, default/linux/amd64/23.0, gcc-14, glibc-2.40, 6.10.3-gentoo-dist x86_64)         
 2 =================================================================
 3                          System Settings
 4 =================================================================
 5 System uname: Linux-6.10.3-gentoo-dist-x86_64-AMD_Ryzen_5_5800X_8-Core_Processor-with-glibc2.40
 6 KiB Mem:    32781840 total,  23355456 free
 7 KiB Swap:          0 total,         0 free
 8 Timestamp of repository gentoo: Fri, 09 Aug 2024 17:00:00 +0000
 9 Head commit of repository gentoo: e3b7cde9d825c40eba0c1ee43a71d9455aa77c2c
10 sh dash 0.5.12
11 ld GNU ld (Gentoo 2.43 p1) 2.43.0
12 app-misc/pax-utils:        1.3.7::gentoo
13 app-shells/bash:           5.2_p32::gentoo
14 dev-build/autoconf:        2.13-r8::gentoo, 2.72-r1::gentoo
15 dev-build/automake:        1.17-r1::gentoo
16 dev-build/cmake:           3.30.2::gentoo
17 dev-build/libtool:         2.4.7-r4::gentoo
18 dev-build/make:            4.4.1-r1::gentoo
19 dev-build/meson:           1.5.1::gentoo
20 dev-lang/perl:             5.40.0::gentoo
21 dev-lang/python:           3.12.5::gentoo, 3.13.0_rc1_p1::gentoo
22 dev-lang/rust-bin:         1.79.0::gentoo
23 sys-apps/baselayout:       2.15::gentoo
24 sys-apps/openrc:           0.54.2::gentoo
25 sys-apps/sandbox:          2.39::gentoo
26 sys-devel/binutils:        2.43::gentoo
27 sys-devel/binutils-config: 5.5.2::gentoo
28 sys-devel/clang:           18.1.8::gentoo
29 sys-devel/gcc:             14.2.0::gentoo
30 sys-devel/gcc-config:      2.11::gentoo
31 sys-devel/lld:             18.1.8::gentoo
32 sys-devel/llvm:            18.1.8-r4::gentoo
33 sys-kernel/linux-headers:  6.9::gentoo (virtual/os-headers)
34 sys-libs/glibc:            2.40::gentoo
35 Repositories:
36
37 gentoo
38     location: /var/db/repos/gentoo
39     sync-type: rsync
40     sync-uri: rsync://rsync.gentoo.org/gentoo-portage
41     priority: -1000
42     volatile: False
43     sync-rsync-verify-max-age: 3
44     sync-rsync-extra-opts:.
45     sync-rsync-verify-metamanifest: yes
46     sync-rsync-verify-jobs: 1
47
48 Binary Repositories:
49
50 gentoobinhost
51     priority: 1
52     sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64
53
54 ACCEPT_KEYWORDS="amd64 ~amd64"
55 ACCEPT_LICENSE="@FREE"
56 CBUILD="x86_64-pc-linux-gnu"
57 CFLAGS="-pipe -flto -O2 -march=native"
58 CHOST="x86_64-pc-linux-gnu"
59 CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
60 CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/sandbox.d"
61 CXXFLAGS="-pipe -flto -O2 -march=native"
62 DISTDIR="/var/cache/distfiles"
63 ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
64 FCFLAGS="-O2 -pipe"
65 FEATURES="config-protect-if-modified distlocks ebuild-locks fail-clean fixlafiles ipc-sandbox merge-sync merge-wait network-sandbox news nodoc noinfo noman parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-orphans userfetch userpriv usersandbox usersync"
66 FFLAGS="-O2 -pipe"
67 GENTOO_MIRRORS="http://distfiles.gentoo.org"
68 INSTALL_MASK="/usr/share/applications /usr/share/bash-completion"
69 LANG="C.UTF8"
70 LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
71 LEX="flex"
72 PKGDIR="/var/cache/binpkgs"
73 PORTAGE_CONFIGROOT="/"
74 PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
75 PORTAGE_TMPDIR="/var/tmp"
76 SHELL="/bin/bash"
77 USE="acl amd64 bzip2 cet crypt gdbm iconv ipv6 libtirpc lto multilib ncurses nls openmp pam pcre readline seccomp ssl test-rust unicode xattr zlib" ABI_X86="64 32" ADA_TARGET="gcc_12" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 aes avx avx2 f16c fma3 pclmul popcnt rdrand sha sse3 sse4_1 sse4_2 sse4a ssse3 vpclmulqdq" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby31 ruby32" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
78 Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, MAKEOPTS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
79
80 =================================================================
81                         Package Settings
82 =================================================================
83
84 app-emulation/wine-vanilla-9.14::gentoo was built with the following:
85 USE="X alsa fontconfig gecko gstreamer mingw mono nls opengl sdl ssl strip truetype unwind vulkan xcomposite -capi -crossdev-mingw -cups -custom-cflags -dos -gphoto2 -kerberos -llvm-libunwind -netapi -odbc -opencl -osmesa -pcap -perl -pulseaudio -samba -scanner (-selinux) -smartcard -udev -udisks -usb -v4l -wayland -wow64 -xinerama" ABI_X86="32 64"
86 CFLAGS="-pipe -O2 -march=native"
87 CXXFLAGS="-pipe -O2 -march=native"


Apologies for the paste service; I don't often use them and just tried to find one that was foss. If you have a better site, please refer me to it so I can use it going forward.
Here is the newest WINEDEBUG=file log: https://privatebin.net/?8d67ec4afcb45418#CZtLKUZzyhvKggy14RNfLd5Az12pezs4HA4WESBL6pSE

Thank you for all your help so far. I greatly appreciate it.
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 4845
Location: Bavaria

PostPosted: Sat Aug 10, 2024 1:20 am    Post subject: Reply with quote

It was a long time ago and it may not help you, but for some (crude) Windows programs it was necessary to activate an option in the kernel that is no longer needed today (for "normal" programs). Check if you have activated this in the kernel:
Code:
General setup  --->
    [*] uselib syscall (for libc5 and earlier)

If not, it is worth a try.
_________________
https://wiki.gentoo.org/wiki/User:Pietinger
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Sat Aug 10, 2024 3:18 am    Post subject: Reply with quote

Unfortunately, no dice with uselib enabled. At this point I am genuinelly stumped, because, like I said, it was working perfectly fine on Void before switching to Gentoo, and now I can't even get it to work back on Void with (what I assume to be) no changes to my installation or system configuration.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Mon Aug 12, 2024 3:41 am    Post subject: Reply with quote

Sorry, I also forgot to add that I'm using XFS as my root filesystem, with no separate home partition. I've also tested this under ext4 and have still had the same results, along with downgrading my BIOS version to the one I was on when Wine worked and still no luck. I don't want to give up, but at this point I am genuinelly completely and utterly confused as to what could be causing this. It could be that the errors about being unable to find, open, or create files could be caused by something else, but to me it seems as if Wine (or maybe something else causing Wine to have said issues) is having problems with permissions or file r/w/x access for whatever reason.

I also have an interesting update. Gaming works fine via Lutris even though it doesn't detect my 32-bit Vulkan libraries. I guess this may seem like a solution to some; however, I shouldn't have to use Lutris just to use Wine as I had previously.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22392

PostPosted: Mon Aug 12, 2024 1:39 pm    Post subject: Reply with quote

To pursue this further, I think we need more information. The strace requested above might help (but privatebin fails to render due to JavaScript, so I cannot see it). You could also check mount options, though your latest post makes me doubt that as the explanation.

It might also be helpful if you could reproduce the fault with an open source tool. You said winecfg warns, but works properly. Are there any Wine-native programs, such as winemine, that fail in a way they can be used as a test case?
Back to top
View user's profile Send private message
Chiitoo
Administrator
Administrator


Joined: 28 Feb 2010
Posts: 2670
Location: Here and Away Again

PostPosted: Mon Aug 12, 2024 10:20 pm    Post subject: Reply with quote

Sorry, only just now got back to this, and got pretty tired eyes right now... but, I saw in the 'file' trace something that may or may not be relevant:

Code:
00f4:warn:file:fd_set_file_info Failed to set extended attribute user.DOSATTRIB. errno 61 (No data available)

I'll need to look into that a bit more, to confirm if it's indeed bad or not.

That did make me think of the filesystem again, and though I am not familiar with XFS, I see it has something like this:

Code:
       inode32|inode64
              When inode32 is specified, it indicates that XFS limits inode creation  to  locations  which  will  not
              result in inode numbers with more than 32 bits of significance.

              When  inode64  is  specified,  it indicates that XFS is allowed to create inodes at any location in the
              filesystem, including those which will result in inode numbers occupying more than 32 bits of  signifi‐
              cance.

              inode32  is  provided  for  backwards  compatibility with older systems and applications, since 64 bits
              inode numbers might cause problems for some applications that cannot handle large  inode  numbers.   If
              applications  are  in  use  which  do  not handle inode numbers bigger than 32 bits, the inode32 option
              should be specified.

              For kernel v3.7 and later, inode64 is the default.

Similar to Hu, though, not sure this could have anything to do with it either, since Lutris appears to work, but I also haven't ever looked how exactly Lutris handles things.

Regarding pastebin services, 'app-text/wgetpaste' comes with a list of probably mostly good ones, and is pretty handy to have around in general!
_________________
Kindest of regardses.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Tue Aug 13, 2024 1:52 am    Post subject: Reply with quote

Thank you for the recommendation of wgetpaste; I will use that going forward! I read your message about inodes, and that's something I researched previously; however, after having the same issue on ext4, I don't believe that's the issue. It's now clear, given the fact that Lutris actually works, that Wine itself isn't broken, per se, but I firmly believe there is an access issue regarding the required Wine libraries.

I've tested winemine, and while it works, it elicits the exact same result as winecfg does. It works properly yet still warns about missing libraries. I had to make major truncations on the output file to create a paste for it, but the important details should still remain in the first part of the file. http://dpaste.com/A4GP7C92H
Back to top
View user's profile Send private message
Chiitoo
Administrator
Administrator


Joined: 28 Feb 2010
Posts: 2670
Location: Here and Away Again

PostPosted: Tue Aug 13, 2024 9:19 am    Post subject: Reply with quote

Right, forgot the 'ext4' part...

Kind of wondering now what happens if you try to create a new, 32-bit only prefix using WINEARCH="win32"?

Also wondering about

Code:
err:winediag:getaddrinfo Failed to resolve your host name IP

a bit as well, though probably not related to this particular issue.

Also also, are there any interesting choices with Void Linux that you picked, that I should keep in mind if I were to take a look at that as well?
_________________
Kindest of regardses.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Thu Aug 15, 2024 6:37 am    Post subject: Reply with quote

Unfortunately, same result with Win32 as regular Win64. The failed to resolve your host name IP error isn't related, as I used to see that when Wine worked. I thought that my custom installations of Void and Gentoo could have contributed in some way; however, I recently reinstalled Void using the regular void-installer and still, no dice. I'm going to do some more testing in the mean time, but as of now, still no luck, sadly.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Fri Aug 23, 2024 7:08 pm    Post subject: Reply with quote

Alright, so I figured out what the issue was, and it's kind of weird as this never used to be an issue. Apparently the reason Lutris worked and command-line Wine didn't was because in Lutris' launch scripts, they specifically set the working directory to the same directory as the executable and then change into said directory. By simply changing my Wine command from the absolute path, I instead changed into the directory and ran the command with just the exe name instead of the absolute path (i.e., test.exe from inside /home/user/Games/test/drive_c/Program Files/test, NOT /home/user/Games/test/drive_c/Program Files/test/test.exe from /home/user). Regarding the change in usage of desktop files, I simply added the path term to them and set said path to the root exe directory so that way I can have them cd into them and then just run the exe from there, which for some reason allows the exe to access the necessary dll files from its relative path.

I don't know if (and am leaning towards not believing) this has anything to do with it, but from the wine console, the root wineprefix is essentially invisible (i.e., the wineprefix test at /home/user/Games/test is not visible from any directory under Z:\, including it's parent at /home/user/Games).

I've also tested once again, letting Wine create the wineprefix itself with no change in behavior, so I can safely say that isn't the cause of the issue. I guess this is technically solved, although I'd like to learn if this is change is actually an issue on my end or if this requires a bug report to be filed at WineHQ. As I stated previously, Lutris changes into the root exe directory before running the Wine command, and this wasn't an issue a few months ago.


Last edited by tmrwthumbdown2 on Sat Aug 24, 2024 7:06 am; edited 1 time in total
Back to top
View user's profile Send private message
Chiitoo
Administrator
Administrator


Joined: 28 Feb 2010
Posts: 2670
Location: Here and Away Again

PostPosted: Fri Aug 23, 2024 8:23 pm    Post subject: Reply with quote

That is somewhat strange.

I think I was going to mention here (or maybe it was some other thread...), that I always recommend to indeed change the work directory to where the executable is, but not because of what is being seen here.

I recommend it because some Windows applications may actually require that due to the differences in how Windows and Linux handle current work directory. I can not remember ever seeing it cause what is being seen here, though, especially if the default "drive Z" link is has not been removed, in which case the prefix indeed should "see" everything under the '/' mount point.

It's entirely possible there is a Wine bug there, and since I picked up the "cd to the exe" habit some ages past, especially since I tend to remove the links to '$HOME' and '/' (mind you, that is still not really sandboxing the processes), I may very well not have seen this new behaviour. I'd think many others would have, however.

In any case, I haven't forgotten this issue and have been wanting to find the time and energy to look into it more, and indeed, will do that hopefully sooner rather than later... and find something helpful!

Thank you for the update!
_________________
Kindest of regardses.
Back to top
View user's profile Send private message
tmrwthumbdown2
n00b
n00b


Joined: 08 Aug 2024
Posts: 8

PostPosted: Sat Aug 24, 2024 7:12 am    Post subject: Reply with quote

Of course, and thank you guys for the help. I'm going to keep testing to see if I can find a root cause for this, and if not, I will probably file a bug report just to rule out any issues on my end that could be producing this odd change.

The good news is that this confirms to me that gaming with the new WoW64 mode on Wine does allow for games to be played on both no-multilib glibc and EVEN musl, which in my opinion is huge for people trying to game using a more secure libc implementation. The only roadblock is that you have to make a choice about whether or not you want to play native Linux games that were built against glibc, so this won't be possible for the foreseeable future.

And momentarily after posting this, I did some testing with 'wine start /unix', which does the same thing as the path term in desktop entries, i.e., setting the working directory. Therefore, wine start /unix "/home/user/Games/test/drive_c/Program Files/test/test.exe" does work so long as you use 'wine start /unix' instead of wine. Additionally, starting Wine with a proper Windows C:\ path will work as well. So it's very clearly an issue with the environment only properly being detected from inside the exe's working directory and nowhere else.

I'm further suspecting this to be the root cause of the issue, however.
Code:
wine: could not open working directory L"unix\\home\\user\\", starting in the Windows directory.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gamers & Players All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum