NAME
compat_osf1 —
setup procedure for
running OSF/1 binaries
DESCRIPTION
NetBSD supports running OSF/1 (a.k.a Digital Unix,
a.k.a. Tru64) binaries on
NetBSD/alpha systems. Most
programs should work, including the ones that use the shared object libraries.
Programs that make direct MACH system calls will not work. The OSF/1
compatibility feature is active for kernels compiled with the
COMPAT_OSF1
option enabled (see
options(4)).
To run dynamically linked programs, you will need the OSF/1 shared libraries,
runtime linker, and certain configuration files found in /etc. These are
installed in a “shadow root” directory called
/emul/osf1. Any file operations done by OSF/1 programs run
under
NetBSD will look in this directory first, and
fall back to the file system proper. So, if an OSF/1 program opens
/etc/svc.conf,
NetBSD will first try
to open
/emul/osf1/etc/svc.conf, and if that file does not
exist it will then try
/etc/svc.conf. Shared libraries and
configuration specific to OSF/1 should be installed in the shadow tree.
Setting up /emul/osf1
The simple technique is to install pkgsrc/emulators/osf1_lib. (You may also want
to install pkgsrc/www/navigator and/or pkgsrc/www/communicator.)
Alternatively, if you have access to an OSF/1 machine and if the licensing
details permit, you can copy the contents of:
- /shlib
- /usr/shlib
- /etc/sia
- /usr/lib/X11/locale
(The latter is required to run Netscape Navigator or Communicator.)
Also copy
- /etc/svc.conf
- /usr/ccs/lib/cmplrs/otabase/libots.so
- /sbin/loader
Or, simply NFS mount the appropriate directories under
/emul/osf1.
SEE ALSO
config(1),
options(4)
BUGS
Your
hostname(1)
must contain a dot
or your
resolv.conf(5) must contain
a
search
line. Without one of those, the OSF/1
resolver will die and no hostname resolution will be possible.
Certain values in
/emul/osf1/etc/svc.conf can cause programs
to fail with “Bad system call”.
Pathnames pointed to by symbolic links are not looked up in the shadow root when
running an OSF/1 executable. This is not consistent.