Codebase list canna / debian/3.5b2-25.2 INSTALL.jp
debian/3.5b2-25.2

Tree @debian/3.5b2-25.2 (Download .tar.gz)

INSTALL.jp @debian/3.5b2-25.2raw · history · blame

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
/*
 * INSTALL
 *
 */

本文書では、『かんな』のインストールについて説明します。なお、『かんな』
のコンパイルには X11R6  imake が必要です。

-1.クイックインストール

   本文書に目を通すのが面倒で、各種パラメタの設定やインストールディレ
   クトリがデフォルトで良い場合は以下を行ってください。インストールは 
   /usr/local/canna 下に行われます。

 (1) SONY NEWSHP-UXFreeBSDEWS-UX/V(CISC)FT-UXJLE なしの 
     SunOSOS/2 をお使いの方は、まず付録 A の該当部分に目をお通しく
     ださい。

 (2) X11/Xosdefs.h  X_WCHAR  define していたり、cc のオプションに 
     -DNOTSTDHDRS を付けている場合にはまず付録 A.9 に目をお通しくださ
     い。

 (3) 以下を実行します。

   % xmkmf
   % make Makefile
   % make canna
   (ここは分〜60分ほどかかります)
   % su
   # make install
   # make install.man

   なにかしらエラーが出た場合には以下に目をお通しください。root になれ
   ない場合には「5. root になれない場合のコンパイルおよびインストール」
   を参照してください。


0.はじめに
  
   『かんな』の環境設定の概要を示します。なお、root になれない場合の手
   順を最後に記述しておきますので root の権限がない場合はそこを参照し
   てコンパイル・インストールしてください。

     1. 前準備
     2. コンパイル
     3. インストール
     4. 運用

   『かんな』Version 3.5β2 に関しては以下のマシンでコンパイル確認して
   おります。

    マシン               OS                                コンパイラ
    IBM-PC 互換機(486)  FreeBSD 2.1.5R                     cc(gcc 2.6.3)
    IBM-PC 互換機(486)  Linux 2.0.0                        cc(gcc 2.7.?)
    EWS 4800/320EX      UX/4800 R12.2                      /usr/abiccs/bin/cc
    Sparc Station 5     Solaris 2.5                        cc(gcc 2.6.0)
    HP 9000/715/80      HP-UX 10.01
    Indigo2             IRIX64 6.2                         /usr/bin/cc
    EWS 4800/350        EWS-UX/V(Rel4.2) R9.3              /usr/abiccs/bin/cc

   『かんな』Version 3.5β1 に関しては以下のマシンでコンパイル確認して
   おります。

    マシン               OS                                コンパイラ
    IBM-PC 互換機(486)  FreeBSD 2.1.5R                     cc(gcc 2.6.3)
    IBM-PC 互換機(486)  Linux 2.0.0                        cc(gcc 2.7.?)
    EWS 4800/320EX      UX/4800 R12.2                      /usr/abiccs/bin/cc
    Sparc Station 5     Solaris 2.4?
    HP 9000/715/80      HP-UX 10.01
    IBM-PC 互換機(486)  OS/2 Warp J3.0                     emx 0.9c(gcc 2.7.2)
    ?                   SunOS 4.1.4 (JLE)                  cc
    ?                   Linux 2.0.25 + Slackware 3.1
    ?                   FreeBSD 2.2-SNAP-961014            gcc 2.7.2.1
    HP 9000/712/60      HP-UX A.09.05                      gcc 2.7.0
    ?                   Linux 2.0.15 + Slackware 3.1
    ?                   Linux 1.2.13 + Slackware 3.0
    Sparc Station LX    Solaris 2.5
    IBM-PC 互換機       Linux(Slackware96) 2.0.25
    Sparc Station 20    Solaris 2.4                        SPARCompiler C 3.0.1
    IBM-PC 互換機(386)  NetBSD-1.2B
    Sparc Station 2     NetBSD-1.2
    Sun3/80             NetBSD-1.2
    IBM-PC 互換機(486)  OS/2 Warp J3.0                     emx 0.9c(gcc 2.7.2)

   これらのマシン以外のマシンでコンパイルを行ったり動作させたかたは是
    Canna@nec.co.jp までご連絡ください。

   『かんな』のコンパイルに関して何らかの問題があった場合にも 
   Canna@nec.co.jp にお問い合わせください。

   Canna@nec.co.jp は『かんな』に関するメーリングリストです。
   Canna@nec.co.jp に加入なさりたい場合には Canna-request@nec.co.jp 
   でお申込ください。加入に関する説明は http://www.nec.co.jp/canna/ 
   ありますのでご参照ください。

   X11R5 にコントリビューションした『かんな』は、物件自体にはバージョ
   ンが明記されていなかったのですが、Version 1.2 ということにします。

   Version 1.2 から Version 2.2 への変更点、およびそれ以降の変更点につ
   いては CHANGES.jp をご覧ください。


1. 前準備

  1.1 Canna.conf の設定

   Canna.conf ファイルを書き換えて、『かんな』システムをインストールす
   るディレクトリなどを指定します。

    cannaBinDir     コマンドをインストールするディレクトリです。

    cannaSrvDir	    cannaserver および cannakill をインストールするディ
                    レクトリです。

    cannaLibDir    『かんな』の種々のファイルをインストールするディレ
                    クトリです。

    cannaManDir     マニュアルページをインストールするディレクトリです。

    cannaIncDir     インクルードファイル等をインストールするディレクト
                    リです。

    libCannaDir     libcanna 等ライブラリ等をインストールするディレク
                    トリです。

    ErrDir          ログファイルをインストールするディレクトリです。

    wcharDefinition wchar_t としてシステムのものを使うかどうかを指定し
                    ます。

    Wlib            wchar_t 関連の関数が入っているライブラリを指定しま
                    す。libc に入っている場合にはブランクのままにして
                    おきます。 System V では通常 -lw です。

    JapaneseLocale  日本語を使うときの LANG 環境変数の値を指定します。


    cannaOwner      辞書とかな漢字変換サーバのオーナを指定します。4.1 
                    の項も参照してください。

    cannaGroup      辞書とかな漢字変換サーバのグループを指定します。
                    4.1 の項も参照してください。

    pointerIntegerDef
		    ポインタのサイズが long のサイズよりも大きい場合で、
		    long long 型が存在する場合はここに -DBIGPOINTER 
		    定義してください(例えば SX3  SUPER-UX の場合)

    cannaDsoRev     shared library のリビジョンを指定します。so.1 であ
                    れば 1 です。

    sharedLibExtension
                    shared library の拡張子を指定します。通常は so.1 
                    などが使われます。 HP-UX では sl です。

    DicDir          辞書をインストールするディレクトリです。

    pubdicDir       Pubdic+ では最新の辞書が準備されています。そちらを
                    利用する場合にはここでそのディレクトリを指定します。
                    Canna  make をする前に、指定されたディレクトリに 
                    iroha.t が作られている状態になっているようにしてく
                    ださい。

    JAPANESEMAN     マニュアルページをインストールする時に日本語のマニュ
                    アルページをインストールするか、英語のマニュアルペー
                    ジをインストールするかを示します。このパラメタに関
                    しては #define するかしないかにより動作が切り替わ
                    りますのでご注意ください。
                    日本語のマニュアルページに対して英語のマニュアルペー
                    ジは不十分ですのでご注意ください。

    cannaLight      『かんな』を少しでも軽くしたい人はこのパラメタを 1 
                    にしてください。古いプロトコルを組み込まなくなりま
                    す。デフォルトは 1 です。
 
    USE_OBSOLETE_STYLE_FILENAME
                    漢字辞書名、ローマ字テーブル名を Version 3.4 以前
                    の名前のままにする場合には、このマクロを #define 
                    してください。ちなみに、Version 3.5 から、ローマ字
                    か名変換テーブルの拡張子が .kp から .cbp へ、テキ
                    スト辞書ファイル、バイナリ辞書ファイル、辞書学習ファ
                    イルの拡張子がそれぞれ、.t, .d, .fq から .cbd, .
                    ctd, .cld に変更になりました。

   例としてデフォルトの設定を以下に示します。


                cannaBinDir = /usr/local/canna/bin
                cannaSrvDir = /usr/local/canna/bin
                cannaLibDir = /usr/local/canna/lib
                cannaManDir = /usr/local/canna/man
                cannaIncDir = /usr/local/canna/include/canna
                libCannaDir = /usr/local/lib
                ErrDir = /usr/spool/canna
                wcharDefinition = -DCANNA_WCHAR
                Wlib =
                JapaneseLocale = japan
                cannaOwner = bin
                cannaGroup = bin
                pointerIntegerDef =
                sharedLibExtension = so.1
                cannaDsoRev = 1
                DicDir = $(cannaLibDir)/dic
                #define JAPANESEMAN
                pubdicDir = $(CANNAROOT)/dic/ideo/pubdic
                cannaLight = 1

   wcharDefinition は、OS  wchar_t 定義と mbstowcs などの関数定義を
   用いる時には何も指定しません。OS  wchar_t の定義を行っていなかっ
   たり、mbstowcs などの関数を持っていなかったり、あるいは mbstowcs 
   持っていても日本語環境 (/usr/lib/locale/ja_JP など)を用意していない
   場合には -DCANNA_WCHAR を指定してください。

   -DCANNA_WCHAR を指定しなかった場合には JapaneseLocale の設定が必要
   となります。OS の定義しているロケール名を設定してください。このとき
   設定するロケール名は、EUC コードを用いるロケール名を用いてください。
   ロケール名には以下のようなものがあります。

    japanese    SUN Solaris JLE
    japan       NEC UX/4800
    ja_JP.EUC   SONY NEWS-OS

  1.2 widedef.h の設定

   本バージョンでは、-DCANNA_WCHAR が付いている場合をデフォルトとし、
   wchar_t として 4 バイト幅、32 ビット表現のものを使うようにしました。

   OS  wchar_t 表現に合わせたいかたは以下の注意を良く読み、
   -DCANNA_WCHAR をはずしてください。

   -DCANNA_WCHAR を設定しなかった場合には OS  wchar_t 定義などが正し
   く参照されるように注意する必要があります。少なくとも wchar_t の定義
   だけは正しく参照されるように canna/widedef.h を修正してください。

   特に GCC を用いる時などに、どのヘッダのどの定義が使われるかについて
   細心の注意が必要です。

   widedef.h の以下の行を、利用する OS に合わせて変更してください。

    /* replace widec.h instead, if SunOS 4.0 */
    #include <stddef.h>

   また、SunOS  JLE なし版や、EWS-UX/V など、wchar_t 型の定義がなさ
   れていても _WCHAR_T マクロが定義されていないため wchar_t  typedef 
   が重複して行われることがあります。wchar_t 型の定義の時に _WCHAR_T 
   マクロの定義も同時に行われることを確認してください。wchar_t 型の定義
   の典型的な例は以下のようになります。

    #ifndef _WCHAR_T
    #define _WCHAR_T
    typedef unsigned long wchar_t;
    #endif

   SunOS  JLE なし版や、EWS-UX/V などの対処法に関しては本文書の最後
   の部分に説明を書きましたので参照してください。


2. コンパイル

   コンパイルおよびインストールは X11  Imakefile をベースに行われま
   す。Imakefile  機種依存をなくした Makefile であり、Imakefile から
   そのマシン用の Makefile を作成し、実際の make を行います。Imakefile 
   から Makefile を作成するプログラムを imake と呼びます。imake (また
    imake を呼び出すシェルスクリプトである xmkmf)  X11 ベースのフ
   リーソフトウェアをコンパイルするときに必要となりますので、お持ちで
   ないかたはこの機会にインストールされることをお勧めします。

   ここでは imake を持っていると仮定しての説明を行います。

   imake の環境が既に作成されている場合、

       xmkmf; make Makefile
       make canna

   と入力してください。

   xmkmf; make Makefile ではトップディレクトリの Makefile  
   Canna.conf のパラメタにしたがって、作り直します。

   make canna では以下のことが行われます。

   (i) make Makefiles

     全ての下位ディレクトリにて Imakefile から Makefile を作成し直しま
     す。

  (ii) make clean

     各ディレクトリをクリアします。

 (iii) make includes

     色々なディレクトリから参照されるヘッダファイルを include ディレク
     トリに集めます。また、このとき、ディレクトリ階層の構築も行われま
     す。ディレクトリ階層の構築には mkdirhier と言うプログラムが必要で
     す。mkdirhier  $(BINDIR)(通常は /usr/bin/X11) に存在することを
     確認してください。存在していない場合には、X11 のディストリビュー
     ションの xc/util 下から入手して $(BINDIR) にインストールしておい
     てください。

  (iv) make depend

     各ディレクトリでのファイルの依存関係を Makefile に反映します。ま
     たこのとき yacc  lex の展開やシンボリックリンクファイルの作成な
     ども行われます。

     ここでも makedepend というプログラムが必要です。存在しない場合に
      X11 のディストリビューションの xc/util 下から入手してインストー
     ルしておいてください。

   (v) make

     実際にプログラムのコンパイルを行います。


3.インストール

  3.1 通信環境の設定

    かな漢字変換サーバとそのクライアント間における通信のためのポート番
    号を設定します。/etc/services に以下の行を追加してください。

          canna        5680/tcp

    (NIS を使用している場合は、マスタサーバのデータベース等に設定して
    ください)

    「かんな」を以前から利用していた場合 /etc/services に同じポート番 
   号で iroha というサービスが登録されている場合があります。その場合 
   以前の名前でサービスポートを参照する場合もあると思われますので、そ 
   の行はそのまま残しておいて、さらに canna に関する行を追加するよう 
   にしてください。

  3.2 インストール

    『かんな』をインストールする場合、ソースのトップディレクトリで以下
    のいずれかのコマンドを実行してください。

      1) make install

          以下のうち 3)  5) のインストールをします。


      2) make install.man

          各コマンドのマニュアルページを cannaManDir で指定されたディ
          レクトリにインストールします。

      3) make instserver

          『かんな』のかな漢字変換サーバ環境をインストールします。

      4) make instclient

          『かんな』のクライアント環境をインストールします。

      5) make instsgs

          『かんな』のライブラリやヘッダなどコンパイル環境をインストー
           ルします。

    それぞれ、Canna.conf に指定したディレクトリにインストールされます。


  3.3 各ディレクトリの構成について

    以下に『かんな』のソース構成について示します。
    
    -+ lib ----+- RK       かな漢字変換エンジンのライブラリです。
     |         +- RKC      かな漢字変換サーバとの通信用のライブラリです。
     |         +- canna    クライアント用のライブラリです。
     |         |
     |         +- RKC16   
     |         +- canna16 ┘それぞれ wchar_t 16ビット幅のライブラリです。
     |
     |               これらのライブラリは $(libCannaDir) で指定された
     |               ディレクトリにインストールされます。
     |                 
     + server        かな漢字変換サーバ のディレクトリです。
     |               $(cannaSrvDir) で指定されたディレクトリにインストー
     |               ルされます。
     |
     + canna         ヘッダファイルです。
     |
     + cmd ----+*    コマンドです。
     |               $(cannaBinDir) で指定されたディレクトリにインストー
     |               ルされます。
     |
     + ccustom       カスタマイズファイル用エディタです。Lisp を意識し
     |               ないでカスタマイズが行えます。
     |
     + dic --+ ideo  かな漢字変換辞書です。
     |       |     
     |       + phono ローマ字かな変換テーブルです。
     |
     |                $(DicDir) で指定されたディレクトリにインストール 
     |               されます。
     |
     + canuum        『かんな』版 uum (TTY 用の日本語入力フロントエン
     |               )を作成するためのパッチおよび追加ファイルがあり
     |               ます。
     |
     + sample        サンプルクライアントです。
     |
     + misc          その他のファイルです。
     |
     + doc           各種ドキュメントが存在します。

  3.4 種々のファイルについて

    1) ログファイル

      かな漢字変換サーバは起動時にエラーメッセージ等を出力するログファ
      イルを作成します。$ErrDir で設定したディレクトリに作成され、ログ
      ファイルの名前は "CANNA0msgs" です。

      デフォルトでは以下に示すログファイルが作成されます。

                          /usr/spool/canna/CANNA0msgs

  3.5 メッセージングについて

    『かんな』の辞書メンテナンスコマンドのいくつかはメッセージングが行
    われています。したがって、Solaris 2.1  EWS-UX/V(Rel4.0) などの 
    System V Release 4 をベースとした OS にて『かんな』を用いる場合に
     LANG 環境変数(あるいはより細かい指定で LC_MESSAGES 環境変数)
    て日本語を指示する文字列(例えば japanese  japanja_JP.EUC など)
    を指定すると各種メッセージが日本語メッセージに切り替わります(デフォ
    ルトは英語です)

    各種コマンド用の日本語メッセージファイルは cmd/catdic/cannacmd.jpn 
    として存在します。このメッセージファイルを、例えば、

     # mkmsgs -i japan cannacmd.jpn cannacmd

    と打つことによりシステムのメッセージディレクトリにインストールして
    ください(EWS-UX/V(Rel4.0)の例)

    実際にはシステムによって mkmsgs コマンド以外のコマンドを使うことも
    あると思います。各システム添付のマニュアルのメッセージングに関する
    部分を参照してください。


4.運用

  4.1 サーバと辞書のオーナ・グループ

    辞書は容易に内容が書き換えられてしまったりしないように、アクセス権
    を制限する必要があります。例えばログイン名 canna、グループ名 canna 
    を作成し、辞書のオーナとグループをそれぞれ canna にしておくと良い
    でしょう。

    このとき、cannaserver だけは辞書の読み書きができるように、各辞書ディ
    レクトリ、辞書ファイルなどは、オーナ・グループ canna に対し読み書
    き権を開放し、アザーに対してはアクセス権を与えないようにします。
    cannaserver はオーナとグループをそれぞれ canna にし、setuid ビット
     setgid ビットを立てておきます。

    System V ではオーナ・グループを canna の代わりに bin にしても良い
    でしょう。

    辞書や cannaserver のオーナやグループの設定は Canna.conf  
    cannaOwnercannaGroup にて設定します。

    以下ではオーナ・グループをそれぞれ bin にする場合で例として説明を
    行います。

  4.2 かな漢字変換サーバの起動

    以下のコマンドを実行して、かな漢字変換サーバを起動します。

                # cannaserver

    cannaserver は自分自身で fork して、バックグラウンドジョブになりま
    すので、cannaserver の起動時に "&" をつける必要はありません。

    マシンの起動時に、自動的に cannaserver を立ち上げたい場合には、起
    動スクリプト(/etc/rc.local ) cannaserver を起動するように設定
    してください。その際ロックファイルが残っていると cannaserver が起
    動できないので、必ずロックファイルを削除してから起動してください。

    例えば、"/etc/rc.local" の中で以下のように設定すると良いでしょう。

                /usr/local/canna/bin/cannaserver -syslog
                echo 'cannaserver started.'


  4.3 かな漢字変換サーバの終了

    以下のコマンドを実行して、かな漢字変換サーバを終了させます。

                # cannakill

    かな漢字変換サーバは辞書情報の一部をメモリ上に保存しています。その 
    ため、かな漢字変換サーバを直接 SIGKILL などで kill した場合には、
    メモリ上の辞書情報が辞書ファイルに書き込まれない場合があります。か
    な漢字変換サーバを終了させる場合は、必ず cannakill で終了させるよ
    うにしてください。

    マシンの shutdown の際に自動的にかな漢字変換サーバを kill するよう
    にしたい場合には、shutdown スクリプト等で cannakill を起動するよう
    に設定してください。


  4.4 辞書関連

    (1)かな漢字変換辞書

      かな漢字変換辞書の置かれるディレクトリを『辞書ホームディレクトリ』
      と言います。これは "$DicDir" あるいは以下のようにコマンド引数で
      指定されます。
      
      () 『辞書ホームディレクトリ』を /usr/lib/canna/dic にしたい場合。

                # cannaserver /usr/lib/canna/dic


      『辞書ホームディレクトリ』は以下のように構成されています。

              -+-- *.cbp   ローマ字かな変換テーブル 
               |        
               +-- canna   システム辞書ディレクトリ
               |           
               +-- user/*  ユーザ辞書ディレクトリ
               |           
               +-- group/* グループ辞書ディレクトリ

      辞書ホームディレクトリとその下にあるディレクトリとファイルはすべ
      て、cannaserver が読み書きできるようにしてください( 4.1 を参照
      してください)


    (2)ローマ字かな変換テーブル

      ローマ字かな変換テーブルファイルに関してはデフォルトでは 
      "/usr/local/canna/lib/dic" の下にあるものを見にいきます。

      これは カスタマイズファイル "$HOME/.canna" でローマ字かな変換テー
      ブルをフルパスで指定することにより "/usr/local/canna/lib/dic" 
      下以外に置くことが可能です。


  4.5 初期化(カスタマイズ)ファイル

    『かんな』では、ユーザ毎に初期化(カスタマイズ)ファイルを持つことが
    できます。このファイルにキーバインドや、ローマ字かな変換テーブル・
    かな漢字変換辞書等の設定を行うことによって、ユーザ毎に使用しやすい
    環境を整えることができます。


5. root になれない場合のコンパイルおよびインストール

   root になれない場合は例えば以下のようにコンパイル・インストールする
   と良いでしょう。

  5.1 Canna.conf の設定

   コマンドや辞書などがインストールされるディレクトリとして、自分のディ
   レクトリを指定します。また、辞書とかな漢字変換サーバのオーナとグルー
   プを自分のものにします。例えば以下のようになります。

                cannaBinDir = /home/kon/canna/bin
                cannaSrvDir = /home/kon/canna/bin
                cannaManDir = /home/kon/canna/man
                cannaLibDir = /home/kon/canna/lib
                cannaIncDir = /home/kon/canna/include/canna
                libCannaDir = /home/kon/canna/lib
                DicDir = $(cannaLibDir)/dic
                ErrDir = /home/kon/spool/canna
                wcharDefinition = -DCANNA_WCHAR
                Wlib =
                JapaneseLocale = japanese
                sharedLibExtension = so.1
                cannaOwner = kon
                cannaGroup = user

   さらに以下の記述も Canna.conf に追加してください。

                INCROOT = /home/kon/canna/include

   また、Canna.conf 内で chownchgrpchmod などを行うコマンドが以下
   のように定義されていますが、下記のように直してください。

 《現定義》

   /* 以下のつは root にならないでインストールするのであれば echo 
      変えてください。 */
   CHOWN = chown
   CHGRP = chgrp
   CHMOD = chmod

 root になれない場合の定義》

   CHOWN = echo
   CHGRP = echo
   CHMOD = echo

  5.2 コンパイルおよびインストール

   X11R6  imake がすでにシステムにインストールされているのであれば、
   上記の Canna.conf を設定した後は、

      xmkmf
      make Makefile
      make canna
      make install
      make install.man

   で、コンパイル・インストールが行えます。

   X11R6 がマシンにはインストールされていないが、ソースは入手可能であ
   ると言う場合は、X11R6 のソースの xc/config を持ってきて、まず、
   config の下を make してください。(あるいは、NEC  ftp サイトから 
   imake 関連部分だけを入手することもできます。
   ftp://ftp.nec.co.jp/pub/Canna/Canna32 をご参照ください。)

   config の下のコンパイルに関しては、config/cf/Makefile.ini の中の
   BOOTSTRAPFLAG を各マシンに応じて必要な修正をして、

      make -f Makefile.ini

   にて、コンパイルします。

   make canna 中、mkdirhier を使用しますが、このコマンドは X11  
   $(BINDIR) を用いたフルパスで指定されています。これに対処するために、 
   config 下の適当なファイルをエディットするか、『かんな』の 
   Canna.conf にて、

      BINDIR = /home/kon/xutil

   のようにしてください(ちょっとトリッキーですけど)

   以上の準備ができたら、『かんな』をコンパイルするディレクトリのトッ
   プディレクトリ(Canna.conf が存在するディレクトリ)にて、imake を相対
   パスで以下のように実行します。

     ()
      % ../xc/config/imake/imake -I../xc/config/cf -DTOPDIR=../xc \
        -DCURDIR=../Canna35

   あとは、

      % make Makefile
      % make canna
      % make install
      % make install.man

   を実行します。

  5.3 通信環境の設定

    root の権限がないと /etc/services は書き換えられません。ただし、
    /etc/services に記述がなくてもかな漢字変換サーバやかな漢字変換ライ
    ブラリはポート番号をとりあえず 5680 番で動くのでとりあえずは運用で
    きます。

    ただし、この状態では、cannaserver を起動するたびにログファイルにウォー
    ニングメッセージが出力されますのでご注意ください。


付録A 各種 OS での注意点

A.1 EWS-UX/V(CISC ) の場合

   EWS-UX/V では stdio.h  wchar_t の定義が行われます。このとき OS 
   バージョンによっては _WCHAR_T の定義がなされませんで、以下のように 
   wchar_t の周辺部分を書き換えてください。

    #ifndef _WCHAR_T
    #define _WCHAR_T
    typedef unsigned short  wchar;
    typedef unsigned short  wchar_t;
    #endif

   /usr/include/stdio.h を直接書き換えるのがためらわれる場合には、2. 
    (iii) まで実行した状態で、/usr/include/stdio.h を『かんな』のトッ
   プディレクトリの include/ の下に持ってきて書き換え、(iv) 以降を実行
   するようにするのも良いでしょう。

A.2 FT-UX/V の場合

   -Xc オプションでコンパイルすると、stdio.h  sys/byteorder.h とで 
   warning が発生します。気になる人はヘッダファイルを修正してください。

A.3 SunOS の場合

  JLE なしの場合

   /usr/include/sys/stdtypes.h  wchar_t の定義がありますが、以下のよ
   うに変更してください。

    #ifndef _WCHAR_T
    #define _WCHAR_T
    typedef	unsigned short	wchar_t; /* big enough for biggest char set */
    #endif

   さらに、wcharDefinition  -DCANNA_WCHAR を定義してください。

   /usr/include/sys/stdtypes.h を直接書き換えるのがためらわれる場合に
   は、2.  (iii) まで実行した状態で、/usr/include/sys/stdtypes.h 
   『かんな』のトップディレクトリの include/sys/ の下に持ってきて書き
   換え、(iv) 以降を実行するようにするのも良いでしょう。

  shared object を利用する場合

   shared object を利用する場合には Canna.conf 内の shared object のリ
   ビジョンを指定する部分にメジャーリビジョンとマイナーリビジョンの
   つのリビジョンが必要となります。そこで、

    cannaDsoRev = 1.1

   のようにつのリビジョンを指定するようにお願いします。

A.4 SONY NEWS の場合

   SONY NEWS の日本語環境は SJIS  EUC の両方をスイッチすることが可能
   です。『かんな』ではソースのところどころに EUC 文字列が入っています
   ので NEWS でコンパイルするときは LANG 環境変数に EUC 環境を指定する
   名前を設定し、tty の設定を EUC に変えてからコンパイルしてください。

   具体的には以下のようにします(csh の場合)

    % setenv LANG ja_JP.EUC
    % stty euc sys

A.5 HP-UX の場合 (この部分は松沢氏による記述です)
   HP-UX で共有ライブラリを使う場合、ライブラリはオブジェクトがリンク
   された時に指定されたパス名で参照されます。例えば、 libcanna.sl 
   /usr/local/lib/libcanna.sl という名前で参照させたいのならばリンクを
   するときに libcanna.sl  /usr/local/lib に置いてリンクをしなければ
   いけません。そこで少々手間がかかりますが、次の手順でのインストール
   をお勧めします。

     1) Canna.conf  UseInstalledLibCanna を「NO」とします。
     2) make canna を行ないます。
     3) make install を行ないます。
     4) Canna.conf  UseInstalledLibCanna を「YES」とします。
     5) make canna を行ないます。
     3) make install を行ないます。

   今の所 HP-UX には imake は含まれていません。また MIT から頒布された
   X11R5 には HP-UX 用の共用ライブラリ作成用のコンフィグレーションファ
   イルは含まれていません。これらについては下記サイトからアンサポートで
   頒布されているコンパイル済みオブジェクト、コンフィグファイルなどが
   参考になるかも知れません。

     hpcvaaz.cv.hp.com [15.255.72.15] ~ftp/pub/MitX11R5

A.6 FreeBSD をお使いの場合、

   FreeBSD 2.1.5R  stddef.h, stdlib.h のなかでの wchar_t の定義は以
   下のようになっています。

     #ifdef	_BSD_WCHAR_T_
     #ifndef _ANSI_SOURCE
     typedef	_BSD_WCHAR_T_	rune_t;
     #endif
     typedef	_BSD_WCHAR_T_	wchar_t;
     #undef	_BSD_WCHAR_T_
     #endif

   stdlib.hstddef.h の上記定義を、

     #ifdef	_BSD_WCHAR_T_
     #ifndef _ANSI_SOURCE
     typedef	_BSD_WCHAR_T_	rune_t;
     #endif
     #ifndef    _WCHAR_T
     #define    _WCHAR_T
     typedef	_BSD_WCHAR_T_	wchar_t;
     #endif
     #undef	_BSD_WCHAR_T_
     #endif

   のように変更してください。

   /usr/include/stddef.h 等を直接書き換えるのがためらわれる場合には、
   2.  (iii) まで実行した状態で、/usr/include/stddef.h 等を『かんな』
   のトップディレクトリの include/ の下に持ってきて書き換え、(iv) 以降
   を実行するようにするのも良いでしょう。

   また、ccustom  386BSD 系の OS で用いる場合には ccustom/README.386 
   を参照してください。

A.7 NeXTwcharDefinitionの定義(この部分はSRAのひろのぶ氏による記述です)

   1)NeXTSTEP 3.x(J)ではCanna.confwcharDefinitionWCHAR16を定義して
   コンパイルしてください。

   wcharDefinition = -DCANNA_WCHAR -DWCHAR16


   2)NeXTSTEP 3.0Jではwchar_tの定義がstddef.hの中の定義とコンフリクト
   します。これを避けるには、NeXTSTEP 3.0J 
   /NextDeveloper/Headers/ansi/m68k/stddef.hへ次のパッチを入れててくだ
   さい。

------------( cut here )----------------
14a15,16
> #ifndef _WCHAR_T
> #define _WCHAR_T
15a18
> #endif
-------------( end )----------------

   # cd /NextDeveloper/Headers/ansi/m68k
   # patch stddef.h < /tmp/stddef.h.patch

   3) /lib/cppの仕様が違う点

   NeXTSTEPは/lib/cppの仕様が違うのでcmd/の下のシェルコマンド

	cannakill
	dpbindic
	mkromdic 
	canvert
	mkbindic

   は正しくインストールできません。gnuCコンパイラのソースコードから
   cpp を取り出してくるか、他のマシンで既に作成しているものをコピーし
   てくるか、他のマシンのcpprshで使うかしてみてください。


   例: cannakillの場合 --- GNU Emacscccpを使う(注意1)

   NeXT> cd cmd
   NeXT> make clean
   NeXT> make CPP="/usr/local/bin/cccp"


   (注意1)Emacscccpを使うと各ファイルの最初のコメント部分で1

   /**/ 

   というのがファイルの中に残ってしまいます。これはエディタで修正して
   ください。

A.8 AIX をお使いの場合(この部分は IBM の古畑氏による記述です)

   imake  OS のインストール TAPE  X11dev.src に含まれるので, これ
   をインストールするか, MIT R[56] を使うかのいずれかが必要です.

A.9 X11/Xosdefs.h で、X_WCHAR  #define している場合や、cc 
    -DNOSTDHDRS が定義されている場合。

   X_WCHAR  #define されていたり、NOSTDHDRS が定義されている場合、 
   Xlib.h をインクルードすると wchar_t  typedef  Xlib.h で行われて
   しまうようになります。

   X11R6 に付いて来るままの Xlib.h では、wchar_t  typedef が、

    #ifndef X_WCHAR
    #include <stddef.h>
    #else
    /* replace this with #include or typedef appropriate for your system */
    typedef unsigned long wchar_t;
    #endif

   となっており、無造作に wchar_t が定義されています。

    /* replace this with #include or typedef appropriate for your system */

   とある通り、typedef をシステムに合った #include に書き換えるか、少
   なくとも typedef を以下のように _WCHAR_T マクロのチェックで囲むかし
   てください。

    #ifndef X_WCHAR
    #include <stddef.h>
    #else
    #ifndef _WCHAR_T
    #define _WCHAR_T
    typedef unsigned long wchar_t;
    #endif
    #endif

   システムの Xlib.h を書き換えるのがためらわれる場合は、 2.  (iii) 
   まで実行した状態で、/usr/include/X11/Xlib.h を『かんな』のトップディ
   レクトリの include/X11/ の下に持ってきて書き換え、 (iv) 以降を実行
   するようにするのも良いでしょう。

A.10 OS/2 をお使いの場合(この部分の記述は上野@日本アイ・ビー・エムに
     よるものです)

   1)『かんな』のコンパイルには emx 0.9c 以上が必要です。 emx 0.9c 
   ftp://ftp.leo.org  ftp://hobbes.nmsu.edu などから入手できます。

   2) XFree86 for OS/2  imake が必要です。XFree86 for OS/2 
   http://borneo.gmd.de/~veit/os2/xf86os2.html などから入手可能です。
   XFree86 for OS/2 3.2 の場合であれば、XF32base.zip  XF32prog.zip 
   最低限インストールされている必要があります。

   3) x:\XFree86\bin  PATH に加えてください (x: はインストールした
   ドライブ名です)。また環境変数 X11ROOT が最低限必要です。例えば E:
   ドライブのルートディレクトリにインストールした場合は、

      SET X11ROOT=E:

    CONFIG.SYS に加えてください。

   4) XFree86/lib/X11/config 以下のファイルを書き換えます。

   os2.cf:
      #define InstallCmd install -> #define InstallCmd ginstall
      #define BourneShell  /**/  -> #define BourneShell cmd

   os2Lib.rules:
      #define HasSharedLibraries YES -> #define HasSharedLibraries NO

   5) GNU  sed/sort/awk/install が必要です。ftp://hobbes.nmsu.edu など
   に以下のようなファイル名でみつかります。

   gnused.zip
   gnuawk.zip
   gnufutil.zip (install はこれに含まれる)
   gnututil.zip (sort はこれに含まれる)

   また sort.exe  install.exe はそれぞれ gsortexe, ginstall.exe とリ
   ネームしておいてください。 これは OS/2 の標準の sort.exe, install.exe
   と区別するためです。

   6) Canna.conf を設定します。詳しくは「1.1 Canna.conf の設定」をご覧く
   ださい。Canna.conf 中の

   CHOWN = chown
   CHGRP = chgrp
   CHMOD = chmod

   は以下のように変更してください。

   CHOWN = echo
   CHGRP = echo
   CHMOD = echo

   7) 以下を実行します。

     [x:\Canna35] xmkmf
     [x:\Canna35] x11make Makefile
     [x:\Canna35] x11make canna
     [x:\Canna35] x11make install

   さらに詳しい説明は本文書の「2. コンパイル」以降をご覧ください。
   
以上

/* Copyright 1994 NEC Corporation, Tokyo, Japan.
 *
 * Permission to use, copy, modify, distribute and sell this software
 * and its documentation for any purpose is hereby granted without
 * fee, provided that the above copyright notice appear in all copies
 * and that both that copyright notice and this permission notice
 * appear in supporting documentation, and that the name of NEC
 * Corporation not be used in advertising or publicity pertaining to
 * distribution of the software without specific, written prior
 * permission.  NEC Corporation makes no representations about the
 * suitability of this software for any purpose.  It is provided "as
 * is" without express or implied warranty.
 *
 * NEC CORPORATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN 
 * NO EVENT SHALL NEC CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF 
 * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 
 * OTHER TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 
 * PERFORMANCE OF THIS SOFTWARE. 
 */

($Id: INSTALL.jp,v 2.47 1996/12/02 11:37:43 kon Exp $)