COMPAT_SUNOS(8) OpenBSD System Manager's Manual COMPAT_SUNOS(8)
compat_sunos - setup for running SunOS binaries under emulation
OpenBSD/sparc and some of the OpenBSD/m68k architectures can run SunOS
executables. Most executables will work.
The SunOS compatibility feature is active for kernels compiled with the
COMPAT_SUNOS option and kern.emul.sunos sysctl(8) enabled.
Compatibility with SunOS version 5 and later, better known as Solaris, is
not addressed by these instructions; please read the compat_svr4(8) manu-
al page instead.
The exceptions include programs that use the SunOS kvm library, and vari-
ous system calls, ioctl()'s, or kernel semantics that are difficult to
emulate. The number of reasons why a program might fail to work is
(thankfully) longer than the number of programs that fail to run.
Static executables will normally run without any extra setup. This pro-
cedure details the directories and files that must be set up to allow dy-
namically linked executables to work.
The files needed can be found on the SunOS machine. The user is respon-
sible for the legal issues of ensuring that they have a right to use the
required files on their machine. On the OpenBSD machine, do the follow-
1. mkdir -p /emul/sunos/usr/lib /emul/sunos/usr/5lib
2. cp SunOS:/usr/lib/lib*.so.*.* OpenBSD:/emul/sunos/usr/lib
3. cp SunOS:/usr/5lib/lib*.so.*.* OpenBSD:/emul/sunos/usr/5lib
4. cp SunOS:/usr/lib/ld.so OpenBSD:/emul/sunos/usr/lib/ld.so
5. If YP is going to be used, create a link:
ln -s /var/run/ypbind.lock /etc/ypbind.lock
Alternatively, an NFS mount can accomplish the same effect. On the
OpenBSD machine, do the following:
1. mkdir -p /emul/sunos/usr
2. mount SunOS:/usr /emul/sunos/usr
This will place the SunOS libraries on the OpenBSD machine in a location
where the SunOS compatibility code will look first, in order to avoid
conflict with the standard libraries.
A list of things which fail to work in compatibility mode should be here.
OpenBSD 3.6 June 15, 1994 1