Earlier quoted context omitted.
Speaking of portability, As a developer who has shipped software on Windows for over a decade, and then some on Linux. Targeting Windows is insanely easy, because of the ABI. You compile once and you have an extremely high chance that it just works on every Windows version. Not perfect, but better than any other platform ever made. Heck I've used software from CDROMS where the binary was compiled 20 years ago and it…
>do something insane like a giant bundle of everything, or static linking But isn't this exactly what shipping on Windows looks like? I've just checked my Windows partition and there are 43 instances of sqlite dll and 16 instances of Qt5Core.dll because every program that uses those libs needs to include them in their "giant bundle of everything".
Windows API is Successful Cross-Platform API (2024)
91–100 of 147 posts
Re: Windows API is Successful Cross-Platform API (2024)
#92Re: Windows API is Successful Cross-Platform API (2024)
#93Win32 in a browser
Re: Windows API is Successful Cross-Platform API (2024)
#94Earlier quoted context omitted.
You can also simply use Flatpak with the Freedesktop Runtime. It runs everywhere regardless of the distribution. For games Steam offers something similar with the Steam Runtimes. You simply develop for that one container and the software will still be running in 20 years. Even though, of course, making software proprietary isn’t best practice. If you make everything open source from the start the various Linux distri…
From the flatpak docs: > A given branch of the Freedesktop runtime has a 2 year support period after which they are declared EOL.
Re: Windows API is Successful Cross-Platform API (2024)
#95Earlier quoted context omitted.
> Proton represents Valve's failure to make Linux gaming attractive to game studios. > Not even those that have Android/Linux NDK builds, bother with porting to GNU/Linux. It is a huge hassle to make a new build to a new platform. You double build system, release management, and testing. Compared to just one plat. Games are complicated, and testing all the dynamic behaviour is also complicated. Making just a Win32 bu…
That reasoning fails flat given the same studios have no issues supporting iOS, PlayStation, Swift and XBox, which are completely alien to what is used on Android NDK, APIs that are GNU/Linux compatible for 3D rendering, audio and asset loading. Valve basically failed to provide the business value for those studios.
PlayStation and Xbox don't go and cause you constant churn, at least not in the same console generation, and maintenance churn on iOS is only bearable for app developers because there are so many people using it that you can afford to pay the extra effort.
Re: Windows API is Successful Cross-Platform API (2024)
#96Earlier quoted context omitted.
This is true. To be fair, if you use only the Linux syscall interface, then a program that you compiled on x86 in the 90s will probably still run anywhere today. Linus is adamant about this. But if you want to use... anything else, then it's unlikely to work at all unless you are very specific about your target. There isn't one company deciding that glibc or mesa or whatever is binary backward compatible on every ker…
> To be fair, if you use only the Linux syscall interface, then a program that you compiled on x86 in the 90s will probably still run anywhere today. Linus is adamant about this. This is frankly the opposite of how it should've been. Who cares that the kernel ABI doesn't change from release to release? As an end-user, I couldn't care less. Even as a developer I care very little indeed, because I'm not writing drivers…
Re: Windows API is Successful Cross-Platform API (2024)
#97Re: Windows API is Successful Cross-Platform API (2024)
#98(2024) Interesting provocative article, I bet it will be praised on some Microsoft sponsored conference. Wine and Proton are not tributes to Win32's portability. They are symptoms of a desktop market that Microsoft locked hard enough that the rest of us had to reverse engineer our way out. Market damage, not collaboration. The ecosystem was not won on technical merit. OEM per-processor licensing, embrace-extend-extin…
Speaking of portability, As a developer who has shipped software on Windows for over a decade, and then some on Linux. Targeting Windows is insanely easy, because of the ABI. You compile once and you have an extremely high chance that it just works on every Windows version. Not perfect, but better than any other platform ever made. Heck I've used software from CDROMS where the binary was compiled 20 years ago and it…
This is what you do for Flatpack, Steam, or Docker. All these are popular options.
> Oh and I almost forgot.. install scripts that detect distros, install dependencies.
Most distros offer tooling to make packages for their package managers. With them you declare the dependencies you want and the package manager does the rest.
> And god help you if you need to ship a kernel module.
The right way to do it is to open source it and let the installer compile the software against the kernel headers. Sysdig and VirtualBox do that.
Re: Windows API is Successful Cross-Platform API (2024)
#99Earlier quoted context omitted.
>do something insane like a giant bundle of everything, or static linking But isn't this exactly what shipping on Windows looks like? I've just checked my Windows partition and there are 43 instances of sqlite dll and 16 instances of Qt5Core.dll because every program that uses those libs needs to include them in their "giant bundle of everything".
Now count up the .NET runtime dlls too!
Re: Windows API is Successful Cross-Platform API (2024)
#100(2024) Interesting provocative article, I bet it will be praised on some Microsoft sponsored conference. Wine and Proton are not tributes to Win32's portability. They are symptoms of a desktop market that Microsoft locked hard enough that the rest of us had to reverse engineer our way out. Market damage, not collaboration. The ecosystem was not won on technical merit. OEM per-processor licensing, embrace-extend-extin…
The point is not that Win32 is exemplary. The point is that it's compatible. More compatible, in some cases, than native apps for non-Windows platforms. A Win32 binary that runs in Wine is likely to work on more Linux distros than a native Linux binary, due to decisions made by glibc and distro maintainers over the years.
Even though z/OS is officially a Unix.