compat_aout - setup for running a.out OpenBSD binaries on
OpenBSD supports running legacy a.out binaries. This only
i386 systems for now. Most programs should work.
The a.out compatibility feature is active for kernels compiled with the
COMPAT_AOUT option and kern.emul.aout sysctl(8) enabled.
A lot of programs are dynamically linked. This means that
the shared libraries
that the programs depend on and the runtime linker
are also needed.
A "shadow root" directory for these files on the OpenBSD system will
have to be created. This directory is named /emul/a.out.
operations done by legacy a.out programs run under OpenBSD
will look in
this directory first.
Setting up shared libraries [Toc] [Back]
Up until OpenBSD 3.3, programs were using the a.out file
migrating to a current ELF system, some old binaries may
still be used.
Before installing a current system, all the necessary shared
the /usr/lib, /usr/X11R6/lib, /usr/local/lib and the a.out
system, namely /usr/libexec/ld.so, /usr/bin/ldd, and
should be copied to the corresponding location in the shadow
(e.g., copy /sbin/ldconfig into /emul/a.out/sbin/ldconfig).
/emul/a.out/var/run should also be created.
Before running a.out binaries, the ld.so cache must be prepared, by running
Once everything is set up properly, a.out programs will look
libraries under /emul/a.out and ELF programs will not see
OpenBSD 3.6 June 25, 2003
[ Back ]