Linux – Can GNU/Linux software run on GNU/Hurd

gnuhurdlinux

I am only familiar with the GNU/Linux system and I recently discovered the Hurd kernel, so the first question that came up in my mind was: is the software that I can find on a GNU/Linux system able to run on a GNU/Hurd system? Does the compatibility come from the kernel or the GNU operating system?

Best Answer

Assuming you're referring to binaries, no, you can't run GNU/Linux binaries on a GNU/Hurd system. Compatibility involves a number of factors, including the kernel; any binary which accesses resources managed by the kernel (including, notably, file access) will end up including kernel-specific information, such as how to invoke the kernel (syscalls etc.).

Calling a distribution “GNU/Linux” isn't a claim that it's compatible with the GNU operating system, in particular it's not a claim that it's compatible with a putative GNU operative system using the Hurd. It's simply a name which is meant to recognise the contributions of the GNU project. See Is it possible to run pure GNU? for more info on the GNU operating system, although these days the GNU project itself refers to Linux-based distributions as the GNU operating system (as long as they meet the Free Software Foundation's requirements).

You can build GNU/Hurd-based systems very similar to GNU/Linux-based systems; Debian GNU/Hurd is one example. You could also (theoretically) develop an emulation layer for Linux binaries on Hurd (similar to the iBCS2 compatibility layer for Linux in the past).