Live data from Hacker News

Cross-compiling binaries for Windows is easier than building natively

gist.github.com

121–130 of 349 posts

Re: Cross-compiling binaries for Windows is easier than building natively

#121
post #117

Microsoft's own machine learning repo "Project azua" ( https://github.com/microsoft/project-azua ) runs on JAX. Let that sink in.

At this point Windows as a primary development platform is essentially dead. With a few exceptions (DX) nearly everyone writes code for Unix/Linux and then cross-compiles for Windows.

Windows is the afterthought.

Let that sink in...

Re: Cross-compiling binaries for Windows is easier than building natively

#122

Are symlinks on Windows really such a big issue? I’ve never heard of projects using symlinks in their tree. If Windows developers are complaining about you doing something unusual, why is it their fault?

No, they're not really. And IIS is not that bad either. My main gripe with windows and why i won't develop on it anymore is simple that their system is too complex. I suppose this is the gripe of the article author as well tbh.

Windows is horribly hard to learn. In a day, i learned how to create file, directories, change the stats on those, execute diff and patch, an do weird string modifications with grep and cut (and learn to commit and push with git). First day on an UNIX machine. First work week on a windows machine (at that time, i had already built a LFS): we have those two project with two different version of (proprietary JS front framework) and (weird php framework). Those don't use the same version of mycrypt.dll (and others, but this one i will remember for at least two dozen year). With the support of non-intern engineers including a windows DBA, it took us a week to manage to install the two different versions.

A week prior, i was linking to a previous version of Ruby for my RoR app (it was around 2013).

But since, i really respect windows sysadmin, they are the best of us. I will just never, ever want to work on a windows server again. I like learning, but putting that much effort for this little rewards? not worth.

Re: Cross-compiling binaries for Windows is easier than building natively

#123
post #30

Typical UNIX FOSS rant, not taking into account all the development workflows on Windows.

It doesn't, no. If you are only working with libraries designed for Windows or are linking against binaries, most of the dev issues listed disappear. The point of the article is that the Windows push for open source introduces friction because the way of doing things with established OSS projects is so different.

Re: Cross-compiling binaries for Windows is easier than building natively

#124
post #14

It is. I generate the Windows executables for a program by cross-compiling Rust on Linux. Then test with Wine. The Rust crates are cross-platform enough that I don't have to special case platforms. This is easier than having a Windows machine. The only current headache is that there's no pure Rust bundler, to make ".msi" or ".msix" installer files. If you dump the legacy OS stuff, it gets easier.

> Then test with Wine.

I tried doing that, and then found that my test suite passes on real Windows but fails on Wine, because it uses APIs which Wine doesn't implement correctly (or at all).

Re: Cross-compiling binaries for Windows is easier than building natively

#125
post #115

Earlier quoted context omitted.

Good news is winget will soon support single binaries so that is one option.

Can you link to info about this? I can't find much in a quick Google search

https://github.com/microsoft/winget-cli/issues/182#issuecomm...

Re: Cross-compiling binaries for Windows is easier than building natively

#126
post #116

I agree that symlinks cause more trouble then is needed on any platform. Sadly, only Node really likes to use them to optimise the store of packages Personally, I don't have major issues compiling things on Windows for other platforms (macOs, Win32, Android, Linux). Only awkward thing is designing UIs

I don't think that's what they sre saying, I think they sre saying it's stupid Microsoft requires hoops for such a basic feature, hence "Fix Windows" being option 1

Re: Cross-compiling binaries for Windows is easier than building natively

#127
post #117

Microsoft's own machine learning repo "Project azua" ( https://github.com/microsoft/project-azua ) runs on JAX. Let that sink in.

At this point Windows as a primary development platform is essentially dead. With a few exceptions (DX) nearly everyone writes code for Unix/Linux and then cross-compiles for Windows. Windows is the afterthought. Let that sink in...

That is true in some corners of the industry, but definitely not others.

Re: Cross-compiling binaries for Windows is easier than building natively

#128
I’m surprised Qt hasn’t been mentioned yet for c/c++. You can get qtcreator and mingw baked in for the cost of a couple GB, and it “just works” even if you aren’t using the qt framework. I much prefer qtcreator to visual studio anyways. I suppose this breaks down for the use cases that aren’t c/c++ though.

Re: Cross-compiling binaries for Windows is easier than building natively

#129
post #103

Now try building a "portable" binary that runs on a version of Linux older than yours.

Use ‘zig cc’ and target the appropriate glibc.

I was sad to find out "Zig supports only the last three macOS versions". No ncdu2 for me :(

https://github.com/ziglang/zig/pull/10232#issue-1064864004

Re: Cross-compiling binaries for Windows is easier than building natively

#130
post #117

Microsoft's own machine learning repo "Project azua" ( https://github.com/microsoft/project-azua ) runs on JAX. Let that sink in.

At this point Windows as a primary development platform is essentially dead. With a few exceptions (DX) nearly everyone writes code for Unix/Linux and then cross-compiles for Windows. Windows is the afterthought. Let that sink in...

> nearly everyone writes code for Unix/Linux and then cross-compiles for Windows

That's a very bold statement that I suspect is far from true.

Post reply on HN