compat_sunos - setup for running SunOS binaries under emulation
OpenBSD/sparc and some of the OpenBSD/m68k architectures can
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) manual
The exceptions include programs that use the SunOS kvm library, and various
system calls, ioctl()'s, or kernel semantics that are
emulate. The number of reasons why a program might fail to
(thankfully) longer than the number of programs that fail to
Static executables will normally run without any extra setup. This procedure
details the directories and files that must be set up
to allow dynamically
linked executables to work.
The files needed can be found on the SunOS machine. The user is responsible
for the legal issues of ensuring that they have a
right to use the
required files on their machine. On the OpenBSD machine, do
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.
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
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
[ Back ]