COMPAT_OSF1(8) System Manager's Manual COMPAT_OSF1(8)
NAME
compat_osf1setup 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
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.