https://bugzilla.suse.com/show_bug.cgi?id=1231820 https://bugzilla.suse.com/show_bug.cgi?id=1231820#c3 --- Comment #3 from Alexander Leithner <aleithner@level101.at> --- (In reply to Aaron Puchert from comment #2)
But I'm not sure if the libraries are missing, after all there are files that would resolve this in x86_64-windows. Let's try with a simple "int main() {}". When I add -L/usr/lib64/wine/x86_64-windows, I get the same errors that you got:
...
However, when I instead set the environment variable LIBRARY_PATH=/usr/lib64/wine/x86_64-windows, I get
...
So it seems to have found the libraries and the format is matching. (My suspicion is that winegcc does some conversion under the hood, if we tell it about the libraries in the right way.)
I'm not sure if I'm understanding what you're trying to say/do here. I'll assume that your experiment produces a PE binary for the rest of my comment, as this is the way I read LD's output here. There are certain things we cannot do if we're building a Wine library as a PE binary as opposed to an ELF binary, see the replies to my question about this on the Wine developer mailing list. [1],[2] So, for what it's worth, the archives in question are in fact missing (at least their x86_64-unix variants) since presence of them in x86_64-windows has (should have) no implications when building ELF binaries.
My suspicion is that there is an issue with the paths. The fact that it works on 32-bit, where we have everything in the more usual /usr/lib, versus our 64-bit setup in /usr/lib64, makes me think this might be a reason.
This may be the case though I don't see why changing the paths when building Wine could lead it to not produce all files. When building Wine from source from the Wine project's Git repository, it generates the following folder structure: prefix/lib64/wine +- i386-windows +- x86_64-unix +- x86_64-windows but no prefix/lib folder and no i386-unix as is currently present in OpenSUSE's packages. Notably, with the above folder structure, Wine ELF DLLs can be built for both 32 and 64-bit although only x86_64-unix is present, as I've alluded to in this bug's description. I'm not well-versed enough in RPM spec writing to diagnose the issue with the build process further, though. Aside from paths the only notable difference I see in the current (failing) build logs of Wine on OBS [3],[4] to my local test is that I got the above folder structure after compiling wine with: --enable-archs=i386,x86_64 --enable-win64 in one go. [1]: https://list.winehq.org/mailman3/hyperkitty/list/wine-devel@winehq.org/messa... [2]: https://list.winehq.org/mailman3/hyperkitty/list/wine-devel@winehq.org/messa... [3]: https://build.opensuse.org/public/build/Emulators/openSUSE_Tumbleweed/i586/w... [4]: https://build.opensuse.org/public/build/Emulators/openSUSE_Tumbleweed/x86_64... -- You are receiving this mail because: You are on the CC list for the bug.