WordPerfect 5.1 и 6.0 (релиз SCO)

Я начал использовать WP 5.1 SCO (собранный без использования динамических библиотек) с января, 1995. Весной 1995 я получил копию WP 6.0 SCO (с динамическими библиотеками) и установил ее с трудом. В дальнейшем у меня были проблемы и с менеджером лицензий. Я устанавливал его под 1.2.8.

Эта глава состоит из выдержек "Мини-howto: WordPerfect". Более поздние версии WP SCO включают в себя как динамические, так и статические библиотеки, и поэтому не нуждаются в совместных библиотеках с SCO (shared libraries).

Это информация к размышлению! Если вы действительно хотите WP для Linux, возьмите WP 7.0!

Впечатления от WP/SCO

WP/SCO вроде нормально работает (после того, как были преодолены проблемы инсталляции). Я использовал дистрибутив около 6-12 раз, пока не получил WP 6.0 для Linux (Caldera) и CND 1.0.

Как получить WordPerfect WP/SCO

Свяжитесь с SCO или зайдите на их сайт в WWW http://www.sco.com

Установка WP/SCO

Требования

  • Linux от 1.1.x до 1.2.x

  • модули (динамическая загрузка модулей)

  • iBCS2 (Intel BCS2 и модуль загрузки ELF)

  • динамические библиотеки SCO (если требуется)

  • имя домена (должно быть указано)

  • Имя машины (должно быть указано и должно состоять меньше, чем из 8 символов (localhost менее 9))

Требования к ядру

В ядро должна быть установлена поддержка модулей и ELF. Если вы уже это сделали, то пропустите этот этап, если нет, то сделайте следующее, будучи root-ом:

  • Скопируйте ядро в /usr/src/linux.xxx] и убедитесь в том, что существуют символьные ссылки на каталоги /usr/include/linux и /usr/include/asm (см. /usr/src/linux/README).

  • Соберите поддержку модулей и установите ее (см. ниже)

  • Соберите модуль iBCS2 и установите его (см. ниже)

  • Соберите ядро с включенной поддержкой модулей ELF (ответьте Y на BINFMT_ELF и MOD_VERSIONS)

  • Перезапуститесь с новым ядром

  • Примечание: вы должны собрать файл поддержки модулей ДО того, как соберете новое ядро (CONFIG_ MODVERSIONS=y).

Модули

Для iBCS2 необходим загружаемый модуль, как и для WP 6.0. Скачайте последнюю версию с сайта ftp, соберите его и установите. Если вы уже настроили систему для поддержки загружаемых модулей, пропустите этот этап. Требуется поддержка загружаемых модулей (/sbin/insmod, /sbin/rmmod, /sbin/lsmod). С последними версиями также требуется genksyms.

  • Файл: modules-1.1.87.tar.gz (или более поздние)

  • Сохраните tar-файл в /usr/src/modules и настройте поддержку модулей

  • Прочтите README в /usr/src/modules (или там куда вы его записали)

  • Перейдите в каталог /usr/src/modules/genksyms и дайте команду make genksysms; установите его в /usr/local/bin (или /sbin)

Эмулятор iBCS2

Эмулятор iBCS2 позволяет вам запускать SCO программы, такие как WordPerfect 6.0. Скачайте его с ftp сайта, соберите и установите его.

  • соберите и установите его в /usr/lib/modules

  • Прочтите HINTS (/usr/src/ibcs/Doc/HINTS)

  • Удостоверьтесь в том, что iBCS2 создал /dev/XOR. Если нет, то создайте символьную ссылку с /dev/null на /dev/XOR (cd /dev; ln -s /dev/null /dev/XOR)

Встречаются интерфейсы к подсистемам, работающие на уровне устройств, поэтому для их использования необходимо создать файлы устройств:

        * /dev/socksys and /dev/nfsd - интерфейс для SVr3 TCP/IP приложений, основанных на STREAMS

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

        [ВНИМАНИЕ: все, указанное ниже, может быть уже настроено как /dev/inet, 
         /dev/arp, и т.п., их главные/зависимые числа могут различаться.
         Если это так - пропустите этот шаг]

        * /dev/inet/{arp,icmp,ip,rip,tcp,udp} - специальные сетевые ссылки

          # 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

        [ЭТО НЕОБХОДИМО, И, СКОРЕЕ ВСЕГО, ВАМ ПРИДЕТСЯ СДЕЛАТЬ ВСЕ ВРУЧНУЮ!]
        * /dev/X0R - серверная сторона локального SVR3 X-интерфейса
          (читайте комментарии в Doc/Local-X)

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

        * /dev/spx - клиентская сторона локального SVR3 X-интерфейса
          (читайте комментарии в Doc/Local-X)

          # mknod /dev/spx c 30 1

Разделяемые библиотеки SCO

НЕ НАРУШАЙТЕ АВТОРСКИХ ПРАВ SCO! Вам надо приобрести разделяемые библиотеки SCO и установить их как пользователь root в /shlib

  • cd /; mkdev /shlib; chmod 755 /shlib

  • если понадобится, создайте временный каталог и поместите в него TMPDIR (export TMPDIR=/mytmpdir)

  • Скопируйте библиотеки в /shlib:
        	 /shlib/libX11R5_s 
    	 /shlib/libXtXm* 

Загрузка WP60

Удостоверьтесь, что у вас есть МНОГО места в каталоге /tmp. Если там его немного, то лучше создать другой временный каталог и установить на него переменную окружения TMPDIR. На правах пользователя root попробуйте:

  • Подключите CD (например к /cdrom)

  • Перейдите в этот каталог и запустите ./install script

Если вы получили нижеследующее сообщение об ошибке, то возможно у вас недостаточно места в каталоге /tmp, создайте новый каталог tmp и поставьте там переменную окружения TMPDIR:

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

Если у вас не получилось по другим причинам, то вам надо следовать нижеприведенным инструкциям:

  • запустите iBCS2

  • скопируйте $WPDIR/cdrom/install.wp в $WPDIR и отредактируйте его. Я отредактировал его так, что могу создавать /tmp/WpTmP на сервере NFS (так как у меня не осталось места на диске). Затем я вносил изменения до тех пор, пока она не запустилась.

  • перейдите в каталог TMPDIR и запустите: ifiles/cdlink.sco -r /usr/local/wp60/cdrom. Это создаст ссылки с правильными именами, но неправильными правами.

  • создайте временный каталог на сервере и скопируйте туда все файлы:
    	cp -r  WpTmP/wp60/SCO/* wp60 

  • перейдите во временный каталог wp60 и смените права. cd wp60; chmod 555 wpinstall install/*

  • запустите программу wpinstall и ответьте на вопросы.

  • Так как у меня менеджер лицензии flexlm для WP51, я вынужден был вручную запустить wplicense -e и создать новый файл license.dat.

  • Start WP60.

Менеджер лицензий

WordPerfect использует менеджера лицензий (смотрите руководство). Это довольно "хитрая зараза", которая не всегда правильно работает под Linux. Если у вас возникли проблемы - позвоните в WordPerfect, и они вам помогут. Пожалуйста, ПРОЧТИТЕ, руководство к менеджеру лцензий.

Чтобы запустить менеджера лицензий (на правах пользователя root):

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

Запуск WP60

  • запустите iBCS2

  • запустите менеджера лицензий

  • установите переменную окружения DISPLAY (напр., export DISPLAY=gator:0)

  • запустите xwp ($WPDIR/wpbin/xwp filename.wpf &)

Если вы получили сообщения об ошибках:

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

Вам надо установить переменную окружения DISPLAY (как указано выше) и указать ссылку на устройство /dev/XOR (cd /dev; ln -s /dev/null /dev/XOR).

Замечание: если WP "забирает" цвета с палитры вашего X сервера (проблема бывает при использовании 256 цветов), то уберите графическую заставку следующим образом:

  • Запустите XWP

  • В окошке управления выберите Настройки (Preferences)

  • В окошке Настройки выберите Окружение (ENVIRONMENT)

  • В Окружении выключите Заставку ("Graphical Banner and Startup Screen")

Скрипты RC

Для того, чтобы запустить iBCS2 и менеджер лицензий WP (если надо), вам надо добавить следующую строку в скрипт /etc/rc.d/rc.local

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

Изменения в install

Далее идут мои изменения в install.wp, требующиеся для нормальной работы:

Файл install.wp не будет работать сразу при установке с CDROM. Мне пришлось его немного переделать. Я перенес все файлы во временный каталог и изменил установочный скрипт:

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

Ошибки в WP выпущенном SCO

Я не могу перечислить все ошибки в WP/SCO, но: