[colug-432] ABI and hardware architecture and OS match-ups
Jeff Frontz
jeff.frontz at gmail.com
Sat Sep 24 14:31:42 EDT 2016
On Fri, Sep 23, 2016 at 10:54 AM, Rick Troth <rmt at casita.net> wrote:
> Linux-i386 (for all variants of "i486", "i586", and "i686")
> FreeBSD-i386 (is this compatible with next two?)
> OpenBSD-i386 (is this compatible with previous and next?)
> NetBSD-i386 (is this compatible with previous two?)
> Minix-i386
> Solaris-i386
> CYGWIN-i386 (is this compatible with next?)
> MinGW-i386 (is this compatible with previous?)
I googled "freebsd netbsd abi" and this was the top hit: NetBSD Binary
Emulation (http://www.netbsd.org/docs/compat.html ). According to that
page (under http://www.netbsd.org/docs/compat.html#ports -- "Which OSs can
I emulate on my machine?") on i386 NetBSD you can run:
- BSDI (up to BSDI 3.x binaries)
- FreeBSD(x86) (a.out and ELF binaries)
- IBCS2 systems
- Interactive Unix
- SCO Unix
- SCO Xenix
- Linux(x86)
- Solaris(x86)
So that leaves OpenBSD, Minix, CYGWIN, and MinGW.
This article (http://www.informit.com/articles/article.aspx?p=439601)
says "NetBSD
even includes a rudimentary Darwin ABI that allows some OS X applications
to run."
This (https://news.ycombinator.com/item?id=9198084 ) suggests that cygwin
binaries aren't even compatible between different versions of cygwin, so I
wouldn't look for compatibility elsewhere.
This (http://www.mingw.org/wiki/mingw ) says "Unlike Cygwin, MinGW doesn't
provide Linux or Unix system calls or a POSIX emulation layer. " so if they
don't even provide source-level compatibility, I can't see how MinGW will
run anyone else's binaries. But this guy (
http://www.jonshouse.co.uk/linuxmingw.cgi ) installed mingw under wine
But, really, what is the problem you're trying to solve? Do you want to
just build something or do you want to actually test it as well? For
build-only, you could set up cross-compilation/build environments that are
radically different from the hosted environment (GNU's SDK obviously
supports this -- that's how the virus spreads ;-). But to actually
test/certify that something runs in another environment (even just a
different version of the same environment), you really need to have that
target environment running (if only in a virtual machine).
Maybe it's that you want the fewest number of packages?
Jeff
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.colug.net/pipermail/colug-432/attachments/20160924/2894d78e/attachment.html
More information about the colug-432
mailing list