Next Previous Contents

## 5. WordPerfect 5.1 and 6.0 (SCO release)

I started using WP 5.1 for SCO (which was statically linked) since January, 1995. In the Spring, 1995, I obtained a copy of WP 6.0 for SCO (dynamic linked) and was able to install it with some pain. I subsequently have had some problems with the license manager. I have it running under 1.2.8.

This section is mainly from the original WordPerfect mini-howto. It has not been used in a long time. Note, the more recent versions of WP for SCO included both the dynamic and static linked versions, and hence did NOT require SCO's shared libraries.

This is mainly for background information! If you really want WP for Linux, get the new WP 7.0!

## 5.1 Impressions of WP/SCO

WP for SCO seemed to work fine (once the installation problems were overcome). I used this distribution for about 6-12 months until I received a copy of WP 6.0 for Linux (Caldera) and CND 1.0.

## 5.2 Getting WordPerfect WP/SCO

Contact SCO or visit their WWW page at http://www.sco.com

## 5.3 Installation of WP/SCO

### Requirements

- Linux 1.1.x to 1.2.x
- modules (dynamic module loading software)
- iBCS2 (Intel BCS2 and ELF loader module)
- SCO dynamic libs (if required)
- Domainname should be setup
- Hostname should be setup and be less than 8 characters (localhost is 9)

### Kernel Requirements

The kernel should be setup for module support and ELF support. If you have already done this, skip this step, else, do the following as root:

- Load kernel in /usr/src/linux.xxx] and make sure that the symbolic link to the /usr/include/linux and /usr/include/asm directories are setup (see /usr/src/linux/README).
- Build module support and install it (see below)
- Build iBCS2 module and install it (see below)
- Build kernel with module and ELF support (answer Y to BINFMT ELF and MOD VERSIONS)
- Reboot on new kernel
- Note: you have to build the module support file "genksyms" PRIOR to making your new kernel (telling the kernel to export symbols: CONFIG MODVERSIONS=y).

### Modules

Loadable module support is required for iBCS2 and hence to run WP 6.0. Get the latest from the ftp sites, build it, and install it. If you have already setup your system for loadable modules, skip this step. Loadable module support (/sbin/insmod, /sbin/rmmod, /sbin/lsmod) is required. With recent kernels, genksyms is also required.

- File: modules-1.1.87.tar.gz (or latest)
- Put tar file in /usr/src/modules and build module support
- Read the README in /usr/src/modules (or wherever you put it)
- Cd to /usr/src/modules/genksyms and make genksysms, install it in /usr/local/bin (or /sbin)

### iBCS2 Emulator

The iBCS2 emulator allows you to run SCO binaries such as WordPerfect 6.0. Get the latest from the ftp sites, build it, and install it.

- Build and install in /usr/lib/modules
- Read the HINTS file (/usr/src/ibcs/Doc/HINTS)
- Make sure that iBCS2 sets up /dev/XOR, if not, create a symbolic link from /dev/null to /dev/XOR (cd /dev; ln -s /dev/null /dev/XOR)

The interfaces to some subsystems occur at the device layer and thus you need to create some device files in order to use them:

            * /dev/socksys and /dev/nfsd - interface for SVr3 STREAMS based
              TCP/IP applications

              # mknod /dev/socksys c 30 0
              # ln -s /dev/socksys /dev/nfsd

            [WARNING:  the below may already be setup as /dev/inet,
             /dev/arp, etc., they may have other major/minor numbers,
             if so, skip this step]

            * /dev/inet/{arp,icmp,ip,rip,tcp,udp} - more network hooks

              # mknod /dev/inet/arp c 30 2
              # mknod /dev/inet/icmp c 30 2
              # mknod /dev/inet/ip c 30 2
              # mknod /dev/inet/rip c 30 2
              # mknod /dev/inet/tcp c 30 2
              # mknod /dev/inet/udp c 30 2

            [THIS IS REQUIRED AND WILL USUALLY HAVE TO BE DONE MANUALLY!]
            * /dev/X0R - server side of SVR3 local X interface
              (see comments in Doc/Local-X)

              # ln -s /dev/null /dev/X0R

            * /dev/spx - client side of SVR3 local X interface
              (see comments in Doc/Local-X)

              # mknod /dev/spx c 30 1

### SCO Shared Libraries

DO NOT VIOLATE SCO's COPYRIGHTS! You should get a copy of SCO's shared libraries and install them in /shlib. As root:

- cd /; mkdev /shlib; chmod 755 /shlib
- if required, make a temporary directory and set TMPDIR to it (export TMPDIR=/mytmpdir)
- Copy the following SCO shared libraries from the SCO machine to Linux and put in /shlib:

               /shlib/libX11R5_s
               /shlib/libXtXm*

### Loading WP60

Make sure that you have LOTS of space in your /tmp directory. If you do not have lots of space, make a tmp directory and set the environment variable TMPDIR to it. As root first try the following:

- Mount the CD (e.g., to /cdrom)
- cd to the CDROM and run the ./install script

If you get the following error you may not have enough space in your /tmp directory, make a new tmp directory and set the environment variable TMPDIR (see above):

      ERROR:  not enough space in /tmp, or this is an unsupported machine.

If all else fails, you may have to do it manually per these notes:

- get iBCS2 running
- copy the $WPDIR/cdrom/install.wp to $WPDIR and edit it I changed it so I could create /tmp/WpTmP on an NFS server (did not have the space locally). I then ran the program and made changes until I got it to startup.]
- change to TMPDIR and run: ifiles/cdlink.sco -r /usr/local/wp60/cdrom This builds links with the proper names but the permissions are not set properly.
- make a temp directory on the server and copy all files to it:

              cp -r  WpTmP/wp60/SCO/* wp60

- change to the temp wp60 directory and changed permissions. cd wp60; chmod 555 wpinstall install/*
- run the wpinstall program and answered the questions.
- Because I still have the flexlm license manager for WP51 on the system, I had to manually run wplicense -e and create a new license.dat.
- Start WP60.

### License Manager

WordPerfect uses a license manager (see the manuals). This is a tricky beast that sometimes does not work properly under Linux (I have had it fail, done something else then I was able to start it). If you have problems call WordPerfect and they can assist you. Please RTFM the documentation section on the license manager.

To start the license manager, as root:

            # cd $WPDIR/shbin10
            # ./wplicense -s

### Starting WP60

- start iBCS2
- start the license manager
- setup your DISPLAY environment variable (e.g., export DISPLAY=gator:0)
- run xwp ($WPDIR/wpbin/xwp filename.wpf &)

If you get the errors:

      /dev/XOR: No such file or directory
      Error: Can't open display: :0.0

You need to set up your DISPLAY environment variable (per above) and possibly setup the link to the device /dev/XOR (cd /dev; ln -s /dev/null /dev/XOR).

Note if WP "steals" the colors from your X server (a problem if the depth is only 256 colors), disable the display of the graphics banner page by doing the following:

- Start XWP
- From the control window, click on Preferences
- from the Preferences window, select ENVIRONMENT
- From the ENVIRONMENT window, turn off the checkbox for "Graphical Banner and Startup Screen"

### RC Scripts

You will need to add a line to your /etc/rc.d/rc.local script (or similar) to start iBCS2 and the WP license manager (if desired).

            # /sbin/insmod /usr/lib/modules/iBCS &
            # $WPDIR/shbin10/wplicense -s &

### Changes to install

This was extracted from my original notes and includes changes to install.wp that are reported to work:

The install.wp on the CDROM did not work out of the box. I had to modify it to get it to work by moving all files to a temporary directory and changing this install script. The changes are:

    48c48,49
    <       mkdir $LNK_DIR 2> /dev/null
    ---
    > echo making LNK_DIR=$LNK_DIR
    >       mkdir $LNK_DIR
    51c52
    <
    ---
    > echo removing /tmp/TMPTMP
    53a55,57
    > echo /tmp/TMPTMP=
    > cat /tmp/TMPTMP
    > echo /tmp/TMPTMP -- to here
    62,63c66,83
    <       for i in $myfiles
    <       do
    ---
    > echo MYFILES=$myfiles  THISDIR=$thisdir
    > ls $myfiles
    > echo making LNK_DIR=$LNK_DIR/ifiles
    > mkdir $LNK_DIR/ifiles
    > chmod 777 $LNK_DIR/ifiles
    > cp $thisdir/ifiles/* $LNK_DIR/ifiles
    > chmod 777 $LNK_DIR/ifiles/*
    > ls -l $LNK_DIR/ifiles
    >
    > # echo making links....
    > # $LNK_DIR/ifiles/cdlink.sco -r $thisdir
    > # echo links should be done...
    > # exit
    >
    >
    > #     for i in $myfiles
    >         i=$thisdir/ifiles/cdlink.sco
    > #     do
    65a86,87
    > echo /tmp/TMP=
    > cat /tmp/TMP
    73c95
    <                       rm -f /tmp/TMPTMP
    ---
    >               rm -f /tmp/TMPTMP
    77c99
    <       done
    ---
    > #     done
    368a391,394
    > echo THISDIR=$thisdir
    > thisdir=/usr/local/wp60/cdrom
    > echo THISDIR=$thisdir
    >
    469a496,498
    > echo INIT DONE, THISDIR=$thisdir
    > ls $thisdir/ifiles/cdinst.*
    >
    493a523,526
    >
    > echo RUN_ME=$RUN_ME
    > RUN_ME=$thisdir/ifiles/cdinst.sco
    > echo RUN_ME=$RUN_ME

## 5.4 Bugs in WP/SCO

I did not keep a detailed list of bugs for WP/SCO, however:

- The initial version had install problems.
- The initial version used SCO shared libraries, hence required a copy of them on Linux.

Next Previous Contents