summaryrefslogtreecommitdiff
path: root/share/man/man8/compat_linux.8
diff options
context:
space:
mode:
authorJason McIntyre <jmc@cvs.openbsd.org>2003-08-06 12:06:56 +0000
committerJason McIntyre <jmc@cvs.openbsd.org>2003-08-06 12:06:56 +0000
commit6325f463e2351e8e921030c6bb28a23fbb300dfd (patch)
treee17a112bc940a1973d3b917ca5b5f2444d430e27 /share/man/man8/compat_linux.8
parent4ed45f237e8c61324728bfecbd1bb3827db3622e (diff)
- remove old groff macros
- tidy up lists/displays - indent for readability
Diffstat (limited to 'share/man/man8/compat_linux.8')
-rw-r--r--share/man/man8/compat_linux.8149
1 files changed, 64 insertions, 85 deletions
diff --git a/share/man/man8/compat_linux.8 b/share/man/man8/compat_linux.8
index c66df2ff4fb..0a309d5a6ea 100644
--- a/share/man/man8/compat_linux.8
+++ b/share/man/man8/compat_linux.8
@@ -1,4 +1,4 @@
-.\" $OpenBSD: compat_linux.8,v 1.29 2003/06/06 19:28:06 jmc Exp $
+.\" $OpenBSD: compat_linux.8,v 1.30 2003/08/06 12:06:55 jmc Exp $
.\" $NetBSD: compat_linux.8,v 1.2 1995/10/16 20:17:59 fvdl Exp $
.\"
.\" Copyright (c) 1995 Frank van der Linden
@@ -100,9 +100,8 @@ Basically, there are 3 possibilities.
(When following these instructions, root privileges are required on the
.Ox
system to perform the necessary installation steps).
-.Pp
-.Bl -tag -width 123 -compact
-.It 1.
+.Bl -enum
+.It
Access to the
.Ox
.Xr ports 7
@@ -117,8 +116,7 @@ The
port contains the shared libraries, binaries, and other related files
necessary to run Linux applications.
Access to a Linux system is not needed.
-.Pp
-.It 2.
+.It
Access to a Linux system:
In this case temporarily install the binary there, see what
shared libraries it needs, and copy them to the
@@ -128,14 +126,12 @@ Example: ftp the Linux binary of Doom.
Put it on the Linux system, and check which shared
libraries it needs by running `ldd linuxxdoom':
.Pp
-.Bl -tag -width 123 -compact -offset indent
-.It (me@linux) ldd linuxxdoom
-.nf
+.Dl (me@linux) ldd linuxxdoom
+.Bd -unfilled -offset indent
libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0
libX11.so.3 (DLL Jump 3.1) => /usr/X11/lib/libX11.so.3.1.0
libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29
-.fi
-.El
+.Ed
.Pp
Get all the files from the last column, and put them under
.Pa /emul/linux ,
@@ -144,15 +140,14 @@ as symbolic links pointing to them.
The following files would therefore be required on the
.Ox
system:
-.nf
-.Pp
-.Pa /emul/linux/usr/X11/lib/libXt.so.3.1.0
-.Pa /emul/linux/usr/X11/lib/libXt.so.3 Li (symbolic link to the above)
-.Pa /emul/linux/usr/X11/lib/libX11.so.3.1.0
-.Pa /emul/linux/usr/X11/lib/libX11.so.3 Li (symbolic link to the above)
-.Pa /emul/linux/lib/libc.so.4.6.29
-.Pa /emul/linux/lib/libc.so.4 Li (symbolic link to the above)
-.fi
+.Bd -unfilled -offset indent
+/emul/linux/usr/X11/lib/libXt.so.3.1.0
+/emul/linux/usr/X11/lib/libXt.so.3 (symbolic link to the above)
+/emul/linux/usr/X11/lib/libX11.so.3.1.0
+/emul/linux/usr/X11/lib/libX11.so.3 (symbolic link to the above)
+/emul/linux/lib/libc.so.4.6.29
+/emul/linux/lib/libc.so.4 (symbolic link to the above)
+.Ed
.Pp
Note that if a Linux shared library with a
matching major revision number to the first column of the 'ldd'
@@ -164,28 +159,25 @@ It is advisable to copy the shared library anyway, if it is a newer version.
The old one can be removed, as long as the symbolic
link points to the new one.
So, if these libraries exist on the system:
-.Pp
-.nf
-.Pa /emul/linux/lib/libc.so.4.6.27
-.Pa /emul/linux/lib/libc.so.4 Li -> Pa /emul/linux/lib/libc.so.4.6.27
-.fi
+.Bd -unfilled -offset indent
+/emul/linux/lib/libc.so.4.6.27
+/emul/linux/lib/libc.so.4 -> /emul/linux/lib/libc.so.4.6.27
+.Ed
.Pp
and the ldd output for a new binary is:
-.nf
-.Pp
+.Bd -unfilled -offset indent
libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29
-.fi
+.Ed
.Pp
it isn't necessary to copy
.Pa /lib/libc.so.4.6.29
too, because the program should work fine with the slightly older version.
.Pa libc.so
can be replaced anyway, and that should leave:
-.Pp
-.nf
-.Pa /emul/linux/lib/libc.so.4.6.29
-.Pa /emul/linux/lib/libc.so.4 Li -> Pa /emul/linux/lib/libc.so.4.6.29
-.fi
+.Bd -unfilled -offset indent
+/emul/linux/lib/libc.so.4.6.29
+/emul/linux/lib/libc.so.4 -> /emul/linux/lib/libc.so.4.6.29
+.Ed
.Pp
Please note that the symbolic link mechanism is
only needed for Linux binaries, the
@@ -201,14 +193,12 @@ place on the
system (in the
.Pa /emul/linux
tree):
-.Pp
-.nf
-.Pa /lib/ld.so
-.Pa /etc/ld.so.cache
-.Pa /etc/ld.so.config
-.fi
-.Pp
-.It 3.
+.Bd -unfilled -offset indent
+/lib/ld.so
+/etc/ld.so.cache
+/etc/ld.so.config
+.Ed
+.It
No access to a Linux system:
In that case, get the extra files from various ftp sites.
Information on where to look for the various files is appended
@@ -221,13 +211,12 @@ any version mismatches), and install them under
.Pa /foo/bar
is installed as
.Pa /emul/linux/foo/bar ) :
-.Pp
-.nf
-.Pa /sbin/ldconfig
-.Pa /usr/bin/ldd
-.Pa /lib/libc.so.x.y.z
-.Pa /lib/ld.so
-.fi
+.Bd -unfilled -offset indent
+/sbin/ldconfig
+/usr/bin/ldd
+/lib/libc.so.x.y.z
+/lib/ld.so
+.Ed
.Pp
ldconfig and ldd don't necessarily need to be under
.Pa /emul/linux ,
@@ -249,11 +238,10 @@ name on each line.
and
.Pa /usr/lib
are standard; the following could be added:
-.Pp
-.nf
-.Pa /usr/X11/lib
-.Pa /usr/local/lib
-.fi
+.Bd -unfilled -offset indent
+/usr/X11/lib
+/usr/local/lib
+.Ed
.Pp
Note that these are mapped to
.Pa /emul/linux/XXXX
@@ -277,10 +265,9 @@ Test this by running the Linux ldd on itself.
Suppose that it is installed as ldd-linux, it should produce
something like:
.Pp
-.Bl -tag -width 123 -compact -offset indent
-.It % ldd-linux `which ldd-linux`
-libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29
-.El
+.Dl % ldd-linux `which ldd-linux`
+.Pp
+.D1 libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29
.Pp
This being done, new Linux binaries can now be installed.
Whenever a new Linux program is installed, it should be determined
@@ -307,7 +294,7 @@ the minor number(s) <mm> are less important, though it is
advised to take the most recent version.
.El
.Ss Finding the necessary files
-.Sy Note:
+.Sy Note :
the information below is valid as of Feb 2003, but certain details
such as names of ftp sites, directories and distribution names
may have changed since then.
@@ -324,21 +311,19 @@ Sometimes the files are unpacked, and individual files can be retrieved,
but mostly they are stored in distribution sets,
usually consisting of subdirectories with gzipped tar files in them.
The primary ftp sites for the distributions are:
-.Pp
-.nf
-ftp.ibiblio.org:/pub/Linux/distributions
-distro.ibiblio.org:/pub/Linux/distributions
-.\" tsx-11.mit.edu:/pub/linux/distributions
-.fi
+.Bd -unfilled -offset indent
+.Pa ftp.ibiblio.org:/pub/Linux/distributions
+.Pa distro.ibiblio.org:/pub/Linux/distributions
+.\" .Pa tsx-11.mit.edu:/pub/linux/distributions
+.Ed
.Pp
Some European mirrors:
-.Pp
-.nf
-.\" ftp.luth.se:/pub/linux/distributions
-.\" ftp.demon.co.uk:/pub/linux/distributions
-ftp.sunet.se:/pub/Linux/distributions
-src.doc.ic.ac.uk:/packages/linux
-.fi
+.Bd -unfilled -offset indent
+.\" .Pa ftp.luth.se:/pub/linux/distributions
+.\" .Pa ftp.demon.co.uk:/pub/linux/distributions
+.Pa ftp.sunet.se:/pub/Linux/distributions
+.Pa src.doc.ic.ac.uk:/packages/linux
+.Ed
.Pp
For simplicity, let's concentrate on Slackware here.
This distribution consists of a number of subdirectories, containing
@@ -366,11 +351,10 @@ So, in this case, the packages glibc and xfree will be needed.
FILELIST.TXT also gives the location of the packages.
Retrieve the packages needed from the following files
(relative to the root of the Slackware distribution tree):
-.Pp
-.nf
-.Pa slackware/l/glibc-2.2.5-i386.2.tgz
-.Pa slackware/x/xfree-4.2.0-i386.5.tgz
-.fi
+.Bd -unfilled -offset indent
+slackware/l/glibc-2.2.5-i386.2.tgz
+slackware/x/xfree-4.2.0-i386.5.tgz
+.Ed
.Pp
Extract the files from these gzipped tarfiles in the
.Pa /emul/linux
@@ -382,13 +366,12 @@ The pcvt virtual console driver has to be in the kernel for them to work,
and some symbolic links in the
.Pa /emul/linux/dev
directory will have to be created, namely:
-.Pp
-.nf
+.Bd -unfilled -offset indent
/emul/linux/dev/console -> /dev/tty
/emul/linux/dev/mouse -> whatever device the mouse is connected to
/emul/linux/dev/ttyS0 -> /dev/tty00
/emul/linux/dev/ttyS1 -> /dev/tty01
-.fi
+.Ed
.Pp
Be warned: the first link mentioned here makes SVGAlib binaries
work, but may confuse others, so it may be necessary to remove it again at
@@ -396,15 +379,11 @@ some point.
.Ss Programs using OSS (Linux) audio
Only the DSP device is emulated, the following link should be created:
.Pp
-.nf
-/emul/linux/dev/dsp -> /dev/audio
-.fi
+.D1 /emul/linux/dev/dsp -> /dev/audio
.Ss Other links Linux binaries may require
CD-ROM support requires a link to the cdrom device, similar to:
.Pp
-.nf
-/emul/linux/dev/cdrom -> /dev/cd0a (first SCSI CD-ROM)
-.fi
+.D1 /emul/linux/dev/cdrom -> /dev/cd0a (first SCSI CD-ROM)
.Ss File systems
Many Linux binaries expect
.Pa /proc