Pieter Krul, pkrul@auxio.org
v0.1, 25 Januari 2001Table of contents
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts and with no Back-Cover Texts. A copy of the license can be found at http://www.gnu.org/copyleft/fdl.txt.
This document provides information on how to set up an UltraLinux system in order to be able to run SunOS and/or Solaris binaries on Linux.
There is a major difference between the binary formats used in SunOS and Solaris programs. SunOS uses the a.out (Assembler Output) binary format, which is the original executable format for UNIX, while Solaris and Linux use the ELF (Executable and Linking Format) binary format. The Linux kernel can 'understand' both formats, kernel support for a.out format is only needed when you need to run SunOS binaries.
The options that should be enabled while configuring the kernel are CONFIG_BINFMT_AOUT32 and CONFIG_SUNOS_EMUL for SunOS, and CONFIG_SOLARIS_EMUL for Solaris binary emulation.
3.1 Configuring Linux for SunOS
Kernel support for 32-bit (ie. SunOS) a.out binaries CONFIG_BINFMT_AOUT32 This allows you to run 32-bit a.out format binaries on your Ultra. If you want to run SunOS binaries (see SunOS binary emulation below) or other a.out binaries, say Y. If unsure, say N
SunOS binary emulation (CONFIG_SUNOS_EMUL) [N/y/?] ? CONFIG_SUNOS_EMUL: This allows you to run most SunOS binaries. If you want to do this, say Y here and place appropriate files in /usr/gnemul/sunos. See http://www.ultralinux.org/faq.html for more information. If you want to run SunOS binaries on an Ultra you must also say Y to "Kernel support for 32-bit a.out binaries" above. SunOS binary emulation (CONFIG_SUNOS_EMUL) [N/y/?] y
3.2 Configuring Linux on sparc for Solaris
3.3 Configuring Linux on sparc64 for Solaris Solaris emulation on Linux can be achieved by loading a kernel module called solaris.o, which is only available on sparc64.
Solaris binary emulation (EXPERIMENTAL) (CONFIG_SOLARIS_EMUL) [M/n/y/?] ? CONFIG_SOLARIS_EMUL: This is experimental code which will enable you to run (many) Solaris binaries on your SPARC Linux machine. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called solaris.o. If you want to compile it as a module, say M here and read Documentation/modules.txt. Solaris binary emulation (EXPERIMENTAL) (CONFIG_SOLARIS_EMUL) [M/n/y/?] y
6.1 FAQs
6.2 Application List The next table shows programs that have been tried:
| Name | Version | Status | OS/Version | Homepage | Comments |
| AcroRead | - | NO | Solaris 2.6 | www.adobe.com | _sys_thread_create() failed, errno = 89 |
| ArcInfo | 8 | OK | Solaris 2.6 | www.esri.com | - |
| GNU GCC | 2.95.2 | OK | Solaris 2.6 | www.gnu.org | - |
| Matlab | - | NO | Solaris 2.6 | www.mathworks.com | Start script only supports lnx86 |
| McAfee Antivirus | - | OK | Solaris 2.6 | www.mcafee.com | - |
| Nedit | 5.x | OK | Solaris 2.6 | www.nedit.org | - |
| Sophos Antivirus | - | OK | Solaris 2.6 | www.sophos.com | - |
| StarOffice | - | NO | Solaris 2.6 | www.sun.com | _sys_thread_create() failed, errno = 89 |
6.3 Links
6.4 Credits
6.5 Glossary