14 comments
my actual literal job involves shipping binaries that have wide linux compatibility--that are simpler than games--and my solution to this ended up being "compile them to wasm and offload the problem to the developers of the wasm engine" this isn't literally the same as "just tell them to use proton" because that's how it works elsewhere too, but it's kinda close @whitequark @eevee @rail Static link them? User-kernel interface is rock solid stable. It's DLL hell that's not. @whitequark @eevee @rail Unfortunately OpenGL/GPU usage depends on DLL hell because of bad architecture. I've beent trying to get this fixed for over a decade. But pretty much anything else is fine to static link. @dalias @eevee @rail what makes these two problems similar is that the core need is "build something for exactly one ABI/platform". I could statically link them which would reduce the amount of different builds to manage to something like... 6 or 7 depending on how i'm feeling (windows x86/x64, macos x64/arm64, linux x64/arm32/arm64); by shipping wasm i build exactly one artifact that runs on most of those @dalias a significant other reason why i used this is because autotools on windows is hell and yosys uses autotools instead of cmake, and this way i never have to use cygwin or some other cursed shit like that @whitequark @dalias using autotools is basically saying "fuck windows". Sure you can get it to work but it's just not worth it, better to write a simple CMakeLists.txt and go on with your life 😀 @Paxxi @whitequark @dalias Huh? I've rarely had trouble compiling stuff that uses autotools on Windows, unlike most other build systems. @jernej__s @whitequark @dalias try it without cygwin/msys or any other fake Linux userspace @whitequark @eevee @rail my last job involved this as well, and my solution involved building a custom dynamic libc fork designed for the purpose it wasn't actually hard to do, but the fact that nobody had done it before was pretty mind-boggling still isn't in upstream because mailing-list-based development is an absolute joke @whitequark @rail [-eevee since she doesn't seem to want to get into this] the example that sticks out in my mind is this one @hierarchon @whitequark @rail this is a whole constellation of tickets about game developers going out of their way to /violate/ the linux ABI and then multiple distributions going out of their way to keep those games working anyway @whitequark @eevee @rail hey now, the Linux kernel syscall ABI is extremely stable. It just doesn't help you much if you're writing anything other than a text-based game. |
@whitequark @rail don't