Wine32 requires 32bit libraries? No fix?
z.figura12 at gmail.com
Fri Jan 17 10:18:42 CST 2020
On 1/17/20 2:35 AM, Klaus-J. Wolf wrote:
> On Thu, Jan 16, 2020 at 7:21 AM Damjan Jovanovic <damjan.jov at gmail.com
> <mailto:damjan.jov at gmail.com>> wrote:
> There are no fundamental limitations to running x86 software on
> x86-64. The CPU supports it. The kernel supports it. Libraries can
> be built into 32 bit binaries. Compilers/linkers/assemblers support
> 32 bit. The problem is political: lazy distros aspiring to be Apple,
> that don't want to build 32 bit packages. The solution can also be
> political: use a distro that allows you to use your computer the way
> that you want.
> Hmm, when I asked I rather thought of technical problems and their
> solution. I mean, 32bit calls can be translated into 64bit ones, if C
> doesn't, assembler will do, so why not do it?
Taking this approach means compiling (probably JIT) or interpreting the
entirety of the game's code, neither of which are performant or indeed
easy (consider self-modifying code).
If we have no 32-bit libraries (or, in the case of Mac OS, ability to
even load 32-bit libraries if they are present), the best solution seems
to be to run most code in 32-bit mode (after all, the CPU does still
support it) and thunk down to 64-bit when necessary, specifically when
entering a host library or something similar.
But this is still a lot of work, and raises a lot of its own nasty
problems. It's far better just to have 32-bit libraries available to us.
More information about the wine-devel