基本的な作業の流れは以下の通り:
$ ./autogen.sh
$ ./configure
$ make
# make install
いくつか引っ掛かった点をまとめておく.
● 環境変数 AUTOCONF_VERSION, AUTOMAKE_VERSION の設定
何もせずに
./autogen.sh
を実行すると
Checking for autoconf (need at least version 2.65) ... broken?
のようなメッセージが出力されてエラーになる.
これを回避するために autogen.sh を実行する前に環境変数 AUTOCONF_VERSION, AUTOMAKE_VERSION を設定しておく.
$ export AUTOCONF_VERSION="2.71"
$ export AUTOMAKE_VERSION="1.16"
これで autogen.sh が正常に実行されるようになる.
● makeinfo のバージョンが古い問題
./configure
を実行すると
configure: error: You do not seem to have makeinfo >= 4.13,
and your source tree does not seem to have pre-built manuals
in the 'info' directory.
Please install a suitable version of makeinfo.
のようなメッセージが出力されてエラーになる.
つまり, システムにインストールされている makeinfo (バージョン 4.8) が古く, バージョンは 4.13 以上でなければならないと言っている.
makeinfo は Texinfo ドキュメントを HTML など様々なフォーマットのドキュメントに変換するプログラムである.
Texinfo プログラムに含まれる.
OpenBSD パッケージから texinfo をインストールしてみたのだが, なぜか makeinfo がインストールされない.
仕方が無いので Texinfo のサイト から最新版 6.8 のソースコードをダウンロードしてきてコンパイル, インストールを行った.
$ cd texinfo-6.8
$ make
# make install
# make TEXMF=/usr/local/share/texmf-dist install-tex
これで新しいバージョンの makeinfo が /usr/local/bin にインストールされる.
$ /usr/local/bin/makeinfo --version
texi2any (GNU texinfo) 6.8
. . . .
configure スクリプトも正常に実行される.
make, make install もひとまず成功して Emacs29 の実行モジュールができる.
ただしまだ Emacs の設定が残っている.
● EIEIO の明示的ロード
etc/NEWS に
** Support for old EIEIO functions is not autoloaded any more.
You need an explicit (require 'eieio-compat) to use 'defmethod'
and 'defgeneric' (which have been made obsolete in Emacs-25 with
'cl-defmethod' and 'cl-defgeneric').
Similarly you might need to (require 'eieio-compat) before loading
files that were compiled with an old EIEIO (Emacs<25).
という記述がある.
Emacs Lisp で defmethod, defgeneric を使用するために init.el 内で明示的に
(require 'eieio-compat)
と指定する必要がある.
● 古いブラウザー変数の無効化
Emacs 起動時に
Symbol's value as variable is void: browse-url-mosaic-program
Symbol's value as variable is void: browse-url-galeon-program
Symbol's value as variable is void: browse-url-netscape-program
というエラーが出る.
これらのエラーは init.el 内に
(defvar browse-url-galeon-program nil)
(defvar browse-url-mosaic-program nil)
(defvar browse-url-netscape-program nil)
と記述しておくことで回避できる.
● Wanderlust のコンパイル
Emacs29 では ELPA からインストールした Wanderlust は動作しない. 起動時にエラーになる.
そこで開発バージョンの最新の Wanderlust をインストールする.
(1) ダウンロード
$ git clone https://github.com/wanderlust/apel.git
$ git clone https://github.com/wanderlust/flim.git
$ git clone https://github.com/wanderlust/semi.git
$ git clone https://github.com/wanderlust/wanderlust.git
(2) コンパイルとインストール
APEL, FLIM, SEMI, Wanderlust の順にインストールする.
以下, LISPDIR, VERSION_SPECIFIC_LISPDIR, PIXMAPDIR は個人の環境に応じて適切に設定を行う.
$ cd apel
$ make install LISPDIR=~/.emacs.d/lisp VERSION_SPECIFIC_LISPDIR=~/.emacs.d/lisp
$ cd ../flim
$ make install LISPDIR=~/.emacs.d/lisp
$ cd ../semi
$ make install LISPDIR=~/.emacs.d/lisp
(3) Wanderlust のコンパイル
WL-CFG ファイル内に以下の記述を追加してから行う.
(setq load-path (append
(list "~/.emacs.d/lisp/apel"
"~/.emacs.d/lisp/emu"
"~/.emacs.d/lisp/flim"
"~/.emacs.d/lisp/semi")))
Wanderlust をコンパイル・インストールする.
$ cd wanderlust
$ make install LISPDIR=~/.emacs.d/lisp PIXMAPDIR=~/.emacs.d/etc/wl/icons
これで Emacs HEAD (Emacs29) が Wanderlust を含めて動作するようになる.
タグ: Emacs29
makeinfo
autoconf, automake
browse-url-mosaic-program
browse-url-galeon-program
browse-url-netscape-program
EIEIO
Wanderlust
OpenBSD / Mac Pro
【このカテゴリーの最新記事】
- no image
- no image
- no image
- no image
- no image