Plamo Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.
Debian wheezy 上で動作させる手順メモです.結構はまったのでメモ程度ですが書いておきます.
dpkg で multiarch 用のアーキテクチャを追加
% dpkg --add-architecture i386
下記コマンドで確認できます.
% dpkg --print-architecture amd64 % dpkg --print-foreign-architectures i386
アーキを追加したのでデータベースをアップデート
% apt-get update
依存関係のあるライブラリをインストールします.
パッケージ名のあとにコロンとアーキ名を記述すればそのアーキのパッケージをインストールしてくれます. インストールする必要があるのは glib, gtk, gtk-common, libxext6, libxi6 あたりです. libgtk と libglib は存在しないので,archive から拾ってくる. libgtk1.2-common_1.2.10-18.1_all.deb は architecture を all から i386 に変更してからインストールしないとうまく行きませんでした.
% wget http://archive.debian.org/debian/pool/main/g/gtk+1.2/libgtk1.2-common_1.2.10-18.1_all.deb % wget http://archive.debian.org/debian/pool/main/g/gtk+1.2/libgtk1.2_1.2.10-18.1_i386.deb % dpkg-deb -x libgtk1.2-common_1.2.10-18.1_all.deb libgtk1.2-common_1.2.10-18.1_all % dpkg-deb -e libgtk1.2-common_1.2.10-18.1_all.deb libgtk1.2-common_1.2.10-18.1_all/DEBIAN % vi libgtk1.2-common_1.2.10-18.1_all/DEBIAN/control Architecture: i386 % dpkg -b libgtk1.2-common_1.2.10-18.1_all libgtk1.2-common_1.2.10-18.1_i386.deb % dpkg -i libgtk1.2-common_1.2.10-18.1_i386.deb % dpkg -i libgtk1.2_1.2.10-18.1_i386.deb % wget http://archive.debian.org/debian/pool/main/g/glib1.2/libglib1.2_1.2.10-19_i386.deb % dpkg -i libglib1.2_1.2.10-19_i386.deb % apt-get install libxext6:i386 % apt-get install libxi6:i386
依存しているパッケージをインストールするために一度実行しておく.
% apt-get -f install
wnn7 の依存関係を削除
きっちり書いても良いんですけど,debian のバージョン上がる度に修正するのも面倒なので削除してます.必要なライブラリは自分で探して手作業で入れる必要があります.wnn7-server と wnn7-xlclient にのみ行います.
% dpkg-deb -x wnn7-server_1.01-3_i386.deb wnn7-server_1.01-3_i386 % dpkg-deb -e wnn7-server_1.01-3_i386.deb wnn7-server_1.01-3_i386/DEBIAN % vi wnn7-server_1.01-3_i386/DEBIAN/control Depends: libc6 (>= 2.1.2), libglib1.2ldbl (>= 1.2.0), libgtk1.2 (>= 1.2.7-1) % dpkg -b wnn7-server_1.01-3_i386 wnn7-server_1.01-3p1_i386.deb % dpkg-deb -x wnn7-xclients_1.03-2_i386.deb wnn7-xclients_1.03-2_i386 % dpkg-deb -e wnn7-xclients_1.03-2_i386.deb wnn7-xclients_1.03-2_i386/DEBIAN % vi wnn7-xclients_1.03-2_i386/DEBIAN/control Depends: debhelper, debconf, libc6 (>= 2.2.4-4), libglib1.2ldbl, libgtk1.2 (>= 1.2.10-4), libxt6 % dpkg -b wnn7-xclients_1.03-2_i386 wnn7-xclients_1.03-2p1_i386.deb
新しい emacs で動作させるためのパッチと,64bit emacs では backend timeout するのを修正するパッチを当てる
% wget http://www.jpl.org/ftp/pub/elisp/wnn7-elisp-el-1.02-1.patch.gz % wget http://blog.foobarhoge.com/src/wnn7-egg/wnn7-egg-backend-timeout.patch % dpkg-deb -x wnn7-elisp_1.02-1_all.deb wnn7-elisp_1.02-1_all % dpkg-deb -e wnn7-elisp_1.02-1_all.deb wnn7-elisp_1.02-1_all/DEBIAN % pushd wnn7-elisp_1.02-1_all/usr/share/emacs/site-lisp/wnn7-elisp % gzip -dc ../../../../../../wnn7-elisp-el-1.02-1.patch.gz | patch -p3 % cat ../../../../../../wnn7-egg-backend-timeout.patch | patch -p1 % popd % dpkg -b wnn7-elisp_1.02-1_all wnn7-elisp_1.02-1p1_all.deb
wnn7 のインストール
server, xclient, eilsp は作り直したパッケージをインストール。
% dpkg -i wnn7-elisp_1.02-1p1_all.deb % dpkg -i wnn7-server_1.01-3p1_i386.deb % dpkg -i wnn7-xclients_1.03-2p1_i386.deb % dpkg -i wnn7-maindic_1.00-1_all.deb % dpkg -i wnn7-optiondic_1.00-1_all.deb % dpkg -i wnn7-utils_1.00-1_all.deb
dpkeyserv のインストール
libc のバージョンが合わないのでちょっと細工してインストールする.
% dpkg -i dpkey7_1.01-1_i386.deb % cp dpkeylist /etc/dpkey % wget http://archive.debian.org/debian/pool/main/g/glibc/libc6_2.3.2.ds1-22sarge6_i386.deb % mkdir /var/dpkey7root % dpkg -x libc6_2.3.2.ds1-22sarge6_i386.deb /var/dpkey7root % cd /var/dpkey7root % cp /usr/sbin/dpkeyserv usr/sbin/. % mkdir -p etc/dpkey % cp /etc/{hosts,nsswitch.conf,protocols,services,resolv.conf} etc/. % cp /etc/dpkey/dpkeylist etc/dpkey/. % vi /etc/init.d/dpkey7 DPKEY_ROOT=/var/dpkey7root CMD_NAME=dpkeyserv start-stop-daemon --start --quiet --chroot $DPKEY_ROOT --exec $DAEMON start-stop-daemon --stop --oknodo --quiet --name $CMD_NAME
ライブラリが過不足ないことを確認
% ldd /usr/bin/wnnsysenv_server % ldd /usr/bin/xwnmo
not found なライブラリがないことを確認.not found があれば,該当するライブラリをインストール.
デーモンが動作することを確認
% /etc/init.d/dpkey7 start % /etc/init.d/wnn7-server start
.emacs.d/init.el 辺りに wnn7 用の設定を記述.
(global-set-key "\C-\\" 'toggle-input-method) (load "wnn7egg-leim") (set-input-method "japanese-egg-wnn7") (set-language-info "Japanese" 'input-method "japanese-egg-wnn7") (setq wnn7-server-name "localhost") (egg-use-input-predict) ; predict を使う場合 (setq use-kuten-for-period nil) ; 区点でピリオドを使う. (setq use-touten-for-comma nil) ; 読点でコンマを使う. (setq enable-double-n-syntax t) ; nn で「ん」を入力
多少抜けてるかも知れないけど,こんな感じで emacs は動作.xwnmo は試してないです. ファイル編集のところは省略して書いてますので,該当するところを適切に記述変更してください.