The next sections contain LynxOS specific notes with respect to the build process.
Currently there is no support for shared libraries in the LynxOS X11R6.8.2 port. A complete binary installation along with manual pages will require approximately 250 MBytes of disk space. To compile the system you will need at least 350 MBytes of free disk space.
Before compiling the X11R6.8.2 distribution you will have to make a few little adjustments to your system:
/lib/cpp
as follows:
#!/bin/sh
/usr/lib/gcc-lib/i386-coff-lynxos/2.9-gnupro-98r2/cpp \
-traditional "$@"
On other platforms than the x86 the paths for the compiler support
programs are different. You may use
gcc -v
to find out the correct path. Set the file mode of /lib/cpp
with
# chown root /lib/cpp
# chmod 755 /lib/cpp
/lib/liblynx.a
. On `LynxOS 3.1.0a' the X servers
need the smem_create()
system call to map the frame buffer into their
address space. The system call is in liblynx
library along
with other Lynx proprietary calls which (unfortunately) overlap with
calls in libc
. To reduce confusion you should modify
liblynx
as follows:
# mv /lib/liblynx.a /lib/liblynx.a.ORG
# mkdir /tmp/xx; cd /tmp/xx
# ar xv /lib/liblynx.a.ORG
# ar rv /lib/liblynx.a *smem*
# ranlib /lib/liblynx.a
If you have the MTRR device driver installed, add a line
#define HasMTRRSupport YES
to the config/cf/host.def
file.
You may then issue a
make World
to compile X11R6.8.2. After some time (and hopefully a successful build of the X11R6.8.2 system) you can install the software using
make install
You must be logged in as super-user (root) when you invoke `make install'.
LynxOS uses cat-able manual pages, and because a doc preparation system is definitely not a vital component of a real-time operating system you must first install groff-1.09 (or newer).
X11R6.8.2 manual pages may be installed using
make install.man
The index and whatis database for the X11R6.8.2 manual pages will be created automatically. If you already have a whatis database or index file in the destination directories you should perform a sort/uniq operation to remove duplicate entries:
for i in 1 3 5
do
rm -f /tmp/tmpfile
sort /usr/X11R6/man/cat$i/LIST$i | uniq > /tmp/tmpfile
mv /tmp/tmpfile /usr/X11R6/man/cat$i/LIST$i
done
sort /usr/X11R6/man/whatis | uniq > /tmp/tmpfile
mv /tmp/tmpfile /usr/X11R6/man/whatis