Пререквизиты
-------------
XFree86 4.1.0, xkb, русские шрифты cyr-rfx (Debian 3.0).
gcc 2.95.4, makeinfo 4.1
Извлечение из CVS
------------------
В соответствии с инструкциями на
http://www.xemacs.org/Develop/cvsaccess.html:
$ cvs -d :pserver:cvs@cvs.xemacs.org:/pack/xemacscvs login
(пароль 'cvs').
Извлекаем модуль:
$ cvs /var/src/
$ cvs -z3 -d :pserver:cvs@cvs.xemacs.org:/pack/xemacscvs checkout -d xemacs-beta xemacs
Сборка
-------
Собирать будем в каталоге /var/build/xemacs-beta/
$ cd /var/build/xemacs-beta/
$ /var/src/xemacs-beta/configure --prefix=/usr/local/xemacs-beta-mule/ \
--with-mule --use-kkcc --pdump
$ make
Установка
----------
Устанавливаем в каталог /usr/local/xemacs-beta-mule/, далее
обозначаемый как $prefix.
$ cd /var/build/xemacs-beta/
# make install
После установки раскладка по каталогам примерно такова:
$prefix/
bin/ бинарники
lib/
xemacs-$version/ специфичные для версии вещи
(например, xemacs-21.5-b9)
etc/ куча мусора
$arch/ вспомогательные бинарники
(например, i686-pc-linux)
info/ стандартная .info-документация
lisp/ базовые elisp-файлы
xemacs/
mule-packages/ пакеты для Mule
(каталог нужно создать руками)
site-lisp/ ???
site-modules/ модули, специфичные для данной машины
xemacs-packages/
пакеты общего назначения
(без привязки к Mule)
(каталог нужно создать руками)
man/
man1/ документация в формате man
В каталогах $prefix/lib/xemacs/mule-packages/ и xemacs-packages/
находится стандартная файловая структура пакетов, а именно:
etc/ всякий мусор
info/ .info-документация на модули
lisp/ elisp-файлы модулей foo, bar,
foo/ quux, etc.
bar/
quux/
man/ исходники документации в Texinfo
(и, наверное, в формате man)
pkginfo/ файлы MANIFEST.*, содержащие
список файлов, принадлежащих
модулям
<ISSUE>
Каталоги $prefix/lib/xemacs/mule-packages/ и xemacs-packages/ не
создаются автоматически при установке. Заметим, что при этом каталоги
$prefix/lib/xemacs/site-lisp/ и site-modules/ создаются при установке.
Это требует обращения к документации и ручного создания каталогов.
Эта проблема отпадает при использовании пакетов из дистрибутива.
</ISSUE>
Создаём эти каталоги вручную:
# cd $prefix/lib/xemacs
# mkdir xemacs-packages/ mule-packages/
Для того, чтобы воспользоваться автоматической системой установки
пакетов, сначала нужно вручную установить пакеты efs, xemacs-base и
Mule-пакет mule-base.
Скачиваем эти пакеты с
ftp://ftp.xemacs.org/packages/ и разворачиваем
их в соответствующие каталоги:
# cd $prefix/lib/xemacs/xemacs-packages/
# tar zxfv $download_dir/xemacs-base-1.71-pkg.tar.gz
# tar zxfv $download_dir/efs-1.29-pkg.tar.gz
# cd $prefix/lib/xemacs/mule-packages/
# tar zxfv $download_dir/mule-base-1.42-pkg.tar.gz
Теперь после запуска $prefix/bin/xemacs в переменной load-path
[C-h v load-path RET]
окажутся следующие каталоги:
"/usr/local/xemacs-beta-mule/lib/xemacs/site-lisp/"
"/usr/local/xemacs-beta-mule/lib/xemacs/mule-packages/lisp/"
"/usr/local/xemacs-beta-mule/lib/xemacs/mule-packages/lisp/mule-base/"
"/usr/local/xemacs-beta-mule/lib/xemacs/xemacs-packages/lisp/"
"/usr/local/xemacs-beta-mule/lib/xemacs/xemacs-packages/lisp/efs/"
"/usr/local/xemacs-beta-mule/lib/xemacs/xemacs-packages/lisp/xemacs-base/"
"/usr/local/xemacs-beta-mule/lib/xemacs-21.5-b9/lisp/mule/"
"/usr/local/xemacs-beta-mule/lib/xemacs-21.5-b9/lisp/"
Как видно, соответствующие подкаталоги из "волшебных" каталогов
mule-packages/ и xemacs-packages/ автоматически оказались в
load-path. После установки дополнительных пакетов их подкаталоги
будут добавлены в load-path или при старте, или с помощью менеджера
пакетов [M-x pui-list-packages RET].
--alexm