インストール


  1. Cannaワイド文字対応版のセットアップ
  2. 変換サーバー,ツールキットの選択
  3. Makefile等の修正(通常は不要)
  4. コンパイル
  5. インストール
  6. キーなどの設定
  7. 動作チェック

Cannaワイド文字対応版のセットアップ

nicolatterはキー配列を変更する関係で,オリジナルのCannaは使えません。Q's Nicolatterに添付のワイド文字対応化パッチを適用し,Cannaをコンパイル,インストールしなおす必要があります。

Cannaワイド文字対応化パッチは公開関数を変更しないので,元々あるCannaを置き換えても他のソフトに影響はありません。

  1. アーカイブの入手

    Cannaのソースは,Debian GNU/Linux -- ユニバーサルオペレーティングシステムにあるものがよく管理されているようです。Debian GNU/Linux -- パッケージで検索し,ファイルを入手します。

  2. 展開,パッチを当てる
    /opt$ tar xzvf canna_3.5b2.orig.tar.gz
    /opt$ mv canna-3.5b2.orig canna-3.5b2-26
    /opt$ cd canna-3.5b2-26
    /opt/canna-3.5b2-26$ gzip -dc ../canna_3.5b2-26.diff.gz | patch -s -p1
    /opt/canna-3.5b2-26$ patch -s -p1 < ~/src/nicolatter-current/patch/canna-3.5b2-q2.diff
        
  3. コンパイル
    /opt/canna-3.5b2-26$ xmkmf -a && make Makefile && make canna
        
  4. インストール
    /opt/canna-3.5b2-26$ su
    /opt/canna-3.5b2-26# make install && make install.man
        

Linuxの幾つかのディストリビューションでは,ここで/usr/libを見ると,libcanna16.so.1.1とlibcanna16.so.1.0とがあり,libcanna16.so.1.0の方が新しいことがあります。この場合は,libcanna16.so.1.1を削除し,ldconfigコマンドを実行します。


変換サーバー,ツールキットの選択

nicolatterをコンパイルする前に,configureコマンドで変換サーバー,ツールキットを選択します。

変換サーバーはWnn, Cannaのいずれか一方,または両方を選択できます。ツールキットはGtk+, Xtから選びます。

configureコマンドの例を示します。

/tmp/nicolatter-x.y.z$ perl configure
usage:
  configure (gtk|xt) [canna] [wnn]

  gtk, xtはどちらか一方を選択,canna, wnnは少なくても一つを選択

/tmp/nicolatter-x.y.z$ perl configure xt canna wnn
Looking for wnnenvrc...found.
Looking for jllib.h....found.
Looking for libwnn.....found.

nicolatter was configured as follows:

toolkit: Xt
    wnn: use
   wnnenvrc: /usr/local/lib/wnn/ja_JP/wnnenvrc
    jllib.h: /usr/X11R6/include/wnn/jllib.h
     libwnn: /usr/X11R6/lib/libwnn.a
  canna: use
Modified config.h
Modified Makefile.conf
Modified nicolatter/Makefile

Makefile等の修正

この節はconfigureコマンドが失敗した場合以外は読み飛ばして構いません。

config.h

 nicolatterは変換サーバーとしてWnn, Cannaが使えます。config.hでこれに関連した設定をします。

 Wnnを使う場合には,あらかじめWnn環境ファイルとヘッダーファイル,ライブラリファイルの場所を確認しておきます。

$ locate wnnenvrc
/usr/doc/wnn/manual.en/2.env/wnn/wnnenvrc
/usr/doc/wnn/manual.en/2.env/wnn/wnnenvrc.gz
/usr/doc/wnn/manual/2.env/wnn/wnnenvrc.gz
/usr/lib/wnn/ja_JP/wnnenvrc                     <--これが環境ファイル
/usr/lib/wnn/ja_JP/wnnenvrc.omr
/usr/lib/wnn/ja_JP/wnnenvrc.rem
/usr/lib/wnn/ja_JP/wnnenvrc.rev
/usr/lib/wnn/ja_JP/wnnenvrc_R
/usr/lib/wnn/ja_JP/wnnenvrc_R.omr
/usr/lib/wnn/ja_JP/wnnenvrc_R.rem
/usr/man/ja/man5/wnnenvrc.5

$ locate jllib.h
/usr/include/wnn/jllib.h                        <--これがヘッダーファイル

$ locate libwnn.               <-- Wnn6だとlibwnn6のときがある
/usr/lib/libwnn.a                               <--これがライブラリファイル
/usr/lib/wnn/ja_JP/libwnn.msg

 config.hをテキストエディタで開き,次のように,利用しない変換サーバーについて,#defineを#undefに書き換えます。

 USE_WNN, USE_CANNAの両方を定義(#define)して,設定ファイルによってnicolatter起動時に選択することもできます。

nicolatter/Makefile

 変換サーバー・ライブラリの選択,UIライブラリ(gtk+, Xt)の選択をnicolatter/Makefileでします。やはり利用しない変換サーバーに関連する部分をコメントアウト(半角の#を行頭に付ける)します。

 gtk+を使う場合はnicolatter/Makefileで次のようにコメントアウトします。

    CFLAGS = $(CCFLAGS) -DUSE_GTK -DGTK_DISABLE_COMPAT_H `gtk-config --cflags`
    LDFLAGS = `gtk-config --libs` $(WNNLIB) $(CANNALIB)
    MISCFILES = ../misc-gtk.o ../window.o

    # CFLAGS = $(CCFLAGS)
    # LDFLAGS = $(LIBDIR) -lXaw -lX11 -lstdc++ $(WNNLIB) $(CANNALIB)
    # MISCFILES = ../window-xt.o

 Xtを使う場合は次のようにします。

    # CFLAGS = $(CCFLAGS) -DUSE_GTK -DGTK_DISABLE_COMPAT_H `gtk-config --cflags`
    # LDFLAGS = `gtk-config --libs` $(WNNLIB) $(CANNALIB)
    # MISCFILES = ../misc-gtk.o ../window.o

    CFLAGS = $(CCFLAGS)
    LDFLAGS = $(LIBDIR) -lXaw -lX11 -lstdc++ $(WNNLIB) $(CANNALIB)
    MISCFILES = ../window-xt.o

コンパイル

 設定プログラムのnicoconf, keyconfはgtk+専用になっているので,gtk+がインストールされていない場合は,nicolatterだけコンパイル,インストールします。

コンパイル途中に警告が出ますが,特に気にする必要はありません。


インストール

 実行ファイルをインストールします。

    nicolatter-x.y.z$ su
    nicolatter-x.y.z# make install

 設定ファイルをホームディレクトリ以下にコピーします。

  1. ~/.nicolatterディレクトリを作成します。
        $ mkdir ~/.nicolatter
    
  2. rcディレクトリにある設定ファイル,キー配列ファイルなどを~/.nicolatterディレクトリにコピーします。
        nicolatter-x.y.z/rc$ cp global nicola.keymap common.keymap symbols.def ~/.nicolatter
    

キーなどの設定

 gtk+があって,nicoconfをコンパイルしたときは,nicoconfで設定します。

 nicoconfがないときは,テキストエディタで~/.nicolatter/globalファイルを編集します。設定ファイルを直接編集する


動作チェック

 まず,変換サーバーがWnnのときはjserver, Cannaのときはcannaserverが動いているか確認します。
$ ps ax |grep jserver
14966  p0 S    0:00 grep jserver
  304  ?  SW   0:04 (jserver)
$ ps ax |grep canna
  288  ?  S    0:00 /usr/sbin/cannaserver
 ktermを二つ開き,一方のktermでnicolatterを実行します。nicolatterはデバッグメッセージを大量に出力することがあるので,ウィンドウを一つあてがってやります。
$ nicolatter
もう一方のktermからテスト用のプログラムを実行します。
nicolatter-x.y.z$ cd ximtest
nicolatter-x.y.z/ximtest$ ./ximtest nicolatter root root
 これで正常に動作していたら,次はxeditぐらいで試します。
    $ XMODIFIERS=@im=nicolatter xedit
 xeditが起動し,ウィンドウ左下に小さなステータスウィンドウが表示されていれば動作しています。仮名キーにしたキー操作,例えば[Ctrl] + [Space]で日本語モードに移行するので,何か打ってみましょう。

 ウィンドウ左下にステータスウィンドウが表示されない場合,リソースの設定でXIMが無効になっていることが考えられます。~/.Xdefaultsファイルを開き,次の行を追加します。

*international: True
*inputMethod: nicolatter
 正常に動作するようなら,Xの起動スクリプトを書き換えて,X開始時にnicolatterを起動するようにします。startxでXを開始するなら ~/.xinitrc ,xdm/kdm/gdmなどでXを開始するなら ~/.xsession に書きます。
    if [ -x /usr/local/bin/nicolatter ]; then
        /usr/local/bin/nicolatter -D
        export XMODIFIERS="@im=nicolatter"
    fi

Copyright (c) 1998-2001 Hisashi HORIKAWA.
All rights reserved.

Netsphere Laboratories