https://bugs.winehq.org/show_bug.cgi?id=57891
Bug ID: 57891 Summary: Wine 10.2 can't find ntdll.so under linux. Product: Wine Version: 10.2 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: loader Assignee: wine-bugs@winehq.org Reporter: hibbsncc1701@gmail.com Distribution: ---
Note: Not sure if this is a dupe of Bug 57874 or not given it's Linux and not a Mac....
After building wine with a custom --prefix, (E.x. configure --prefix=/opt/wine-git-build/wine_10.2), running wine from a home directory fails to find ntdll.so.
:~$ wine explorer wine: could not load ntdll.so: /opt/wine-git-build/wine_10.2/bin/ntdll.so: cannot open shared object file: No such file or directory :~$
Running strace shows that no attempt is made to use the prefix's /lib directory at all for ntdll.so. It goes straight to using the wine binary's install directory, fails, then tries to read a wine symlink in the current working directory, before giving up.
Given that it's blatantly ignoring FHS and using the wine binary's install directory as a root, I assumed there was something wrong with the given prefix argument. The generated Makefile has the exec_prefix variable emitted _before_ the prefix variable despite using it.
I.e.: exec_prefix = ${prefix} prefix = /opt/wine-git-build/wine_10.2
I assume this won't work. Notably bindir and libdir are defined afterwards, and both use exec_prefix, which because I assume it's empty here, means they get a value of "/bin" and "/lib" respectively.
I might be way off, but this bug occurs regardless of arch. I.e. Using a i686 or x86_64 build fails in the exact same way.