diff options
author | Jason McIntyre <jmc@cvs.openbsd.org> | 2003-08-06 12:06:56 +0000 |
---|---|---|
committer | Jason McIntyre <jmc@cvs.openbsd.org> | 2003-08-06 12:06:56 +0000 |
commit | 6325f463e2351e8e921030c6bb28a23fbb300dfd (patch) | |
tree | e17a112bc940a1973d3b917ca5b5f2444d430e27 /share/man/man8/compat_linux.8 | |
parent | 4ed45f237e8c61324728bfecbd1bb3827db3622e (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.8 | 149 |
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 |