GNU bug report logs - #77793
x64dbg cannot find builtin libraries references when running on the Guix's wine

Previous Next

Package: guix;

Reported by: Carlos <gcarlos <at> disroot.org>

Date: Mon, 14 Apr 2025 04:43:02 UTC

Severity: normal

To reply to this bug, email your comments to 77793 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#77793; Package guix. (Mon, 14 Apr 2025 04:43:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Carlos <gcarlos <at> disroot.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 14 Apr 2025 04:43:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Carlos <gcarlos <at> disroot.org>
To: bug-guix <at> gnu.org
Subject: x64dbg cannot find builtin libraries references when running on the
 Guix's wine
Date: Mon, 14 Apr 2025 02:06:15 +0000
Hi!

I'm facing a strange bug on wine that seems to be present only on the 
guix build.

In summary, I'm running a debugger through wine (x64dbg) and a specific 
functionality is misbehaving when compared with the same program running 
on another distributions (formerly, I use to get it working in Gentoo 
and Void Linux).

The problem itself is that x64dbg seems to be unable to resolve builtin 
libraries at the import table of an executable. That is, if there's some 
random dll file used by the exe in the same directory, x64dbg is able to 
resolve it and show the symbols it exports and etc. But if the .exe is 
linked against some of the builtin dlls provided by wine, it just fails 
and shows the error "GetFileNameFromHandle failed", which is a function 
of x64dbg. Apparently, the point of code where this function is called 
on x64dbg is: 
https://github.com/x64dbg/x64dbg/blob/a5a25cc4a46d3823078050d548a5322849cb245c/src/dbg/commands/cmd-debug-control.cpp#L124

By the way, running wine with WINEDEBUG=warn+all shown some interesting 
log lines that occurs for a lot of dlls and is not present on the wine 
tested in another distribution, except for the first one:

0158:warn:file:NtCreateFile 
L"\\??\\Z:\\home\\mim\\projects\\gc\\gc2-client-cd\\shlwapi.dll" not 
found (c0000034)
0158:warn:module:virtual_map_builtin_module 
L"\\??\\C:\\windows\\system32\\shlwapi.dll" found in WINEDLLPATH but not 
a builtin, ignoring
0150:warn:file:NtCreateFile 
L"\\??\\Z:\\home\\mim\\projects\\gc\\gc2-client-cd\\x64dbg\\x32\\??? 
(GetFileNameFromHandle failed)" not found (c0000033)

I've tested 3 versions of wine on guix: 9.0, 9.17 (the exact one that I 
had working on Void Linux) and 10.0.

Thank you all,
Carlos





Information forwarded to bug-guix <at> gnu.org:
bug#77793; Package guix. (Sat, 19 Apr 2025 23:11:03 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Carlos <gcarlos <at> disroot.org>
To: bug-guix <at> gnu.org
Subject: Re: x64dbg cannot find builtin libraries references when running on
 the Guix's wine
Date: Sat, 19 Apr 2025 23:09:36 +0000
Just an update: I've found the root of this issue. The wine package 
doesn't use the mingw cross gcc to compile wine's native dlls.

To address this, we need to use gcc-cross-<arch>-w64-mingw32-toolchain 
as input for wine, as its build system will take care to find and 
automatically use it for compiling suitable things.

I'll work on a patch for it.





This bug report was last modified 61 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.