But why not just do a translation — 32bit x86 to 64bit x86 doesn’t meaningfully restrict available instructions, then just* plant a bunch trampolines in the low 4gig to the real implementations in the 64bit adds space. * I know this isn’t a trivial “just” but it seems like a plausibly achievable approach to me
32-bit binaries have a different ABI. I think you could put 32-bit code in a 64-bit process and have it use the 32-bit API, but then you still need a set of libraries that work with the 32-bit ABI. Ubuntu is just discontinuing packaging their own copies of the 32-bit ABI compatible libraries. Projects like Wine will just need to distribute that on their own.
Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
181–190 of 192 posts
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#182Earlier quoted context omitted.
What's interesting about this is... doesn't WINE also support Win16 applications? My understanding was that it does, yet it doesn't seem to require 16 bit libraries from the host OS...
Windows doesn't even support 16-bit applications (unless you use 32-bit Windows with NTVDM enabled). There was another post on here a few months back about someone getting Win16 apps working on modern 64-bit Windows machines: https://hackernoon.com/win3mu-part-1-why-im-writing-a-16-bit...
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#183I'm curious about Wine's usage and relevance at this point in the Linux desktop story. My assumption is that Linux users(myself included) that use Windows applications(not games), tend to just run a VM in seamless mode for Windows functionality. I would be curious if others had any insight(anecdotal or otherwise) about Wine usage these days.
15 years ago I considered switching to Linux. I depend on some Windows applications and, above all, I want to play games. Wine looked like it was almost there, so I intended to give it another try next year. Year by year I've been trying Wine again and again. As of today, it's still almost there. So, maybe in 2030? By now, I'll stay using Windows.
As of present day I am a happy Linux and Wine user and don't plan on switching to anything else.
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#184Earlier quoted context omitted.
32-bit binaries have a different ABI. I think you could put 32-bit code in a 64-bit process and have it use the 32-bit API, but then you still need a set of libraries that work with the 32-bit ABI. Ubuntu is just discontinuing packaging their own copies of the 32-bit ABI compatible libraries. Projects like Wine will just need to distribute that on their own.
You have the trampolines be responsible for abi translation - that’s what the old OS X ppc emulator did, or I assume the windows arm layer does
A Rosetta-like approach won't work on Ubuntu 19.10 as there will be no 32-bit packages, hence no libraries/frameworks in the appropriate architecture for the Rosetta-like layer to call into.
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#185Earlier quoted context omitted.
32-bit Debian chroot on 64-bit Ubuntu? Works, mostly conforms to user expectations, seems decent?
Well yes if you're going to run another distro that's fine. This issue is about that people can't run new Ubuntu. You can't run new Ubuntu in 32-bit.
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#186Earlier quoted context omitted.
The change Ubuntu is proposing is far less harsh than what macOS is doing. Unlike macOS, Ubuntu will still run 32-bit processes, you just have to provide all of the userspace libraries. Applications like Steam for Linux already do this for binary compatibility reasons, so their usecase won't change much. Wine's official Ubuntu packages currently rely on the OS to provide these userspace libraries. They would "only" n…
I wonder why Wine doesn't have those libraries on standby. I can understand keeping installer/total install size and footprint down for any application but especially emulation which is already complex and going to push hardware. If Wine includes the right components, what performance hit may be suffered? Or maybe I have this wrong and it won't really matter.
Wine stands for "Wine Is Not an Emulator". It's a compatibility layer.
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#187Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#188Earlier quoted context omitted.
I run mIRC on Wine. I know, I know, there are plenty of Linux native IRC clients. In fact, mIRC has been quite stagnant lately. But to me, its UI is still unsurpassed (20 years of muscle memory also help), and it has less latency than alternatives (even with Wine).
I'm surprised that nobody's made an open source clone, since it's a long-standing app, apparently better than the available alternatives, and fundamentally IRC just isn't that hard.
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#189Earlier quoted context omitted.
Actually no, I play DX9 games from 15 years ago and they are still, well, not there yet.
Some even earlier directx games are damn near unplayable anywhere but real hardware, last time I checked. Heavily tied to a handful of video cards from a span of just a few years. Looking at you, Mechwarrior 2: Mercenaries. I don't think VirtualBox even works in those cases.
That's why I still have an XP partition
Re: Wine Developers Concerned with Ubuntu Dropping 32-Bit Support
#190Earlier quoted context omitted.
Remember, though, that the hardware-specific OpenGL library for the user's specific graphics hardware is also a userspace library that has to be provided in a 32-bit version. Even Steam doesn't bother shipping that because it's just not feasible. Without at least some library support from distros it's just not practical to continue 32-bit compatibility.
You can have a little 64 bit process which communicates with the 32 bit process with a named pipe, and acts as a proxy and makes all the syscalls and loads and calls the 64 bit libraries and returns the responses. Obviously it adds extra context switches and will reduce performance, but if you're running ancient legacy 32 bit code, you can probably afford that.
Really, this is an incredibly stupid move that has a high likelihood of killing Linux gaming on Ubuntu.