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.

I also cross compile and remote debug windows software on Linux (C and Rust programs). Using gdbserver --multi (extended remote mode) is quite comfortable.

The biggest advantage is not having to use different tools for different target platforms.

Unfortunately MacOS is more difficult target than Windows. If anyone has tips for compiling and debugging software of MacOS from a Linux host, please do share.

For compiling, I'm pretty happy with https://github.com/tpoechtrager/osxcross.