JVim2.0pβ以降、各種unixでmakeした方々から頂いた報告をann@松下 技研が編集したものです。報告者にお願いして、成功例のみならず、 失敗例も含ませていただきました。 インストールの際に参考になるかと思いますので、ご活用ください。 なお、jvimのバージョン表記のないものは、jvim2.0pのβリリースで の動作報告です。 ann@松下技研 1994年10月08日現在 =>SunOS<====================================================== 1. SunOS4.1.3-JLE1.1.3 Panasonic P4100 〈バージョン〉jvim2.0qβ4 〈日本語入力〉Canna3.2 + Wnn4.109 / Onew2.2.8+ 〈コンパイラ〉cc(付属) 〈コメント〉 Canna作成時に、INSTALL.jpの付録A.3を読むこと。 jvim,onewはmake一発。 互換機P2100のPanaOS1.1, PanaOS1.0(unameの動作が違う)でも動作。 -------------------------------------------------------------- <田島@富士通研> 2. SunOS4.1.1(JLEなし eucを使用) SPARCstation 2 〈日本語入力〉Canna3.2β2 + Wnn4.109 / Onew2.2.3 〈コンパイラ〉cc(付属) 〈コメント〉 make一発。(ただし、make euc) Canna.confで、cannaDsoRev=1.1のように2つのリビジョンを指定すること。 -------------------------------------------------------------- <青柳@新日本製鉄> 3. SunOS4.1.1(JLEなし Wnnのみ Wnnの場所変更) SPARCstation 2 〈日本語入力〉Wnn / Onew2.2.4 〈コンパイラ〉cc(付属) 〈コメント〉 Onew2.2.4 ・ライブラリとヘッダが/usr/local/X11R5の中にあるため、ONEW_CONFを 次のように変更。 WNNINC = -I/usr/local/X11R5/include/wnn WNNLIB = -L/usr/local/X11R5/lib -ljd # onew2.2.7から、このパスも含まれています。 RKKLIBS = $(WNNLIB) RKKOBJS = $(WNNOBJ) jvim ・makefile.junxのJPLIBPATH に -L/usr/local/X11R5/lib を追加.  実際には, JPLIBPATH = -L../../onew ¥ -L/usr/local/X11R5/lib  の2行だけでも可能. # 本版では、このパスも含まれています。 ・JPLIB から -lcanna を削除. JPLIB = -lonew -ljd # その後、Canna 3.2を組み込んでも動作したそうですが、wnnのみ、 # という方の為に残しておきます。 -------------------------------------------------------------- <平山@NEC技術情報システム開発> 4. SunOS4.1.1(JLEなし) SPARCserver370 〈日本語入力〉Canna3.2 + Wnn4.109pl1 / Onew2.2.7a 〈コンパイラ〉cc(OS付属) 〈コメント〉 make一発。 # onew作成時には、ranlibをechoに変更すること。 =>Solaris<==================================================== 1. 日本語Solaris2.1(Cannaのみ) SPARCstation LX 〈バージョン〉jvim2.0qβ4 〈日本語入力〉Canna3.2 / Onew2.2.8+ 〈コンパイラ〉gcc, cc(SPARC works) 〈コメント〉 onew2.2.7 ・エンジンの選択(RKKLIBS, RKKOBJS, ONEW_ENGINE)をCannaのみに変更 ・RANLIBをtouchに変更 ・MISCLIBのコメントアウトをはずす ・ccをコンパイラに合わせて変更(cc->gccのリンクを張って、pathを変更) jvim ・MakefileのSunOS5-gcc,SunOS5-accに 'JPDEF = -DONEW' 'JPLIB = -lonew -lcanna' を追加。 ・gccの場合、そのままmake。 ・SPARCworksの場合、make SunOS5-accを実行。 =>α<========================================================= 1. DEC OSF/1/Japanese V1.3 (rev. 1) DEC ALPHA 〈バージョン〉jvim2.0qβ4 〈日本語入力〉Canna3.2 + Wnn(ベンダ配布)/ Onew2.2.8+ 〈コンパイラ〉cc(付属), gcc 〈コメント〉 Canna 3.2のINSTALL.jp付録A.9を読むこと。 Canna.confのsharedLibExtensionを'so'のみに変更。 jvimはmake一発。 できあがったjvimが立ち上がらずにcoreを吐くことがある。 Makefileの先頭のJPLIBPATHから、最後の2行を取り除いて作ると大丈夫 (こちらの環境設定が悪いのか?) =>AIX<======================================================== 1. IBM AIX 3.2 RS6000 〈バージョン〉jvim2.0qβ4 〈日本語入力〉Canna3.2 + Wnn(ベンダ配布)/ Onew2.2.8+ 〈コンパイラ〉cc(付属) 〈コメント〉 onewコンパイル時にjlib.hとでwchar_tが衝突するため、 jlib.hのwchar_tの宣言を次のように変更。 #ifndef NEC #ifndef WCHAR_T + #ifndef _WCHAR_T typedef unsigned short wchar_t; + #define _WCHAR_T + #endif #define WCHAR_T #endif #endif /* NEC */ Canna32のINSTALL.jpの付録A.9を読むこと。 Canna.confのsharedLibExtensionを'a'のみに変更。 DoSharedLibをNOに、DoNormalLibをYESに変更(shared libraryを使わない)、 あるいはDoSharedLibをYESに、DoNormalLibをNOに変更。 jvimはmake一発。 -------------------------------------------------------------- <小島@三菱重工> 2. IBM AIX 3.1.14 RS6000 〈バージョン〉jvim2.0p 〈日本語入力〉Canna3.2 + Wnn4.109p1 / Onew2.2.8 〈コンパイラ〉cc(付属) / gcc 2.5.6 〈コメント〉 ・Canna3.2 については AIX 3.2 と同様。 AIX3.1 の imake は使い物にならないので、X11R5 のものを使う。 ・onew2.2.8 に以下のパッチを当てる。 # 辞書の行を一行につなぐ所を除いて、対処しました。 # もともとの Makefile で、 # mksys:; cd sys; make # (CFLAGS を渡さない)となっているのは、なぜなのでしょう? diff -ur org/onew/Makefile onew/Makefile --- org/onew/Makefile Sun Jun 19 23:47:26 1994 +++ onew/Makefile Thu Aug 25 14:20:05 1994 @@ -65,11 +65,11 @@ exe: libonew.a onew -mkstabs:; cd stabs; make -mkinterface:; cd interface; make -mkdialogue:; cd dialogue; make -mkengine:; cd engine; make -mksys:; cd sys; make +mkstabs:; cd stabs; make CFLAGS="${CFLAGS}" +mkinterface:; cd interface; make CFLAGS="${CFLAGS}" +mkdialogue:; cd dialogue; make CFLAGS="${CFLAGS}" +mkengine:; cd engine; make CFLAGS="${CFLAGS}" +mksys:; cd sys; make CFLAGS="${CFLAGS}" libonewk.a: $(MAKEFILE) $(LIBOBJS) ¥ diff -ur org/onew/ONEW_CONF.default onew/ONEW_CONF.default --- org/onew/ONEW_CONF.default Tue Jun 21 23:29:48 1994 +++ onew/ONEW_CONF.default Thu Aug 25 14:15:12 1994 @@ -58,11 +57,9 @@ WNNVER = WNN4 WNN_RKSPCL = '"rk_spclval.h"' -WNN_DICLIST = '"jinmei chimei computer kihon koyuu setsuji symbol tankan¥ - bio special usr/$$USER/private=10 usr/$$USER/ud=10"' +WNN_DICLIST = '"jinmei chimei computer kihon koyuu setsuji symbol tankan bio special usr/$$USER/private=10 usr/$$USER/ud=10"' -WNN_DICDIRS = '"pubdic/%s.dic;usr/$$USER/%s.h",¥ - "sys/%s.dic;usr/$$USER/%s.h"' +WNN_DICDIRS = '"pubdic/%s.dic;usr/$$USER/%s.h","sys/%s.dic;usr/$$USER/%s.h"' # 頻度辞書を個人のホームディレクトリに置く場合の定義例 #WNN_DICDIRS = '"sys/%s.dic;$$HOME/wnn/dic/%s.h"' @@ -140,7 +137,7 @@ #CC = /usr/ucb/cc #CC = /usr/5bin/cc -CFLAGS = -O +CFLAGS = -O -DAIX31 #★ ranlib が必要な場合に定義してね RANLIB = ranlib diff -ur org/onew/engine/Wnn.c onew/engine/Wnn.c --- org/onew/engine/Wnn.c Sun Jun 19 23:14:45 1994 +++ onew/engine/Wnn.c Thu Aug 25 14:29:19 1994 @@ -23,8 +23,8 @@ #define VERSION Onew_version() -#include #include +#include #include #include "onew.h" #include "Wnn_euc.h" diff -ur org/onew/sys/sys.h onew/sys/sys.h --- org/onew/sys/sys.h Tue Jun 21 20:11:16 1994 +++ onew/sys/sys.h Thu Aug 25 14:20:41 1994 @@ -30,7 +30,7 @@ #endif #if defined(solaris) ¥ - || defined(aix) ¥ + || defined(aix) && !defined(AIX31) ¥ || defined(sgi) ¥ || defined(nec_ews) #define USE_TERMIO @@ -38,6 +38,7 @@ #endif #if defined(hpux) ¥ + || defined(aix) && defined(AIX31) ¥ || defined(__linux__) ¥ || defined(__osf__) && defined(__alpha) #define USE_TERMIOS ・jvim2.0p に以下のパッチを当てる。 LIBS の /usr/local/lib/wnn/etc/xutoj.o は必要なければ取り除く。 cc ではコンパイルできなかった。 # jvim2.0qβ4では、xutoj.oを除いて対応しています。 diff -ur org/jvim2.0p/src/Makefile jvim2.0p/src/Makefile --- org/jvim2.0p/src/Makefile Fri Jun 24 13:32:38 1994 +++ jvim2.0p/src/Makefile Thu Aug 25 14:44:47 1994 @@ -130,8 +130,9 @@ AIX: @echo 'IBM RS6000 AIX 3.2' $(MAKE) $(TARGET) ¥ - 'MACHINE = -DSYSV_UNIX -DAIX' ¥ - 'LIBS = -lcur' + 'MACHINE = -DSYSV_UNIX -DAIX -DAIX31' ¥ + 'CC = gcc -O -Wall' ¥ + 'LIBS = -lcur /usr/local/lib/wnn/etc/xutoj.o' OSF1: @echo 'OSF1/DEC Alpha' diff -ur org/jvim2.0p/src/unix.c jvim2.0p/src/unix.c --- org/jvim2.0p/src/unix.c Tue Jun 21 20:06:04 1994 +++ jvim2.0p/src/unix.c Thu Aug 25 14:34:53 1994 @@ -44,8 +44,8 @@ # if defined(__sgi) || defined(UTS2) || defined(UTS4) || defined(AUX3) # include # endif -# if defined(M_XENIX) || defined(SCO) || defined(UNICOS) -# ifndef UNICOS +# if defined(M_XENIX) || defined(SCO) || defined(UNICOS) || defined(AIX31) +# if !defined(UNICOS) && !defined(AIX31) # include # endif # include =>EWS4800<==================================================== <平山@NEC技術情報システム開発> 1. NEC EWS-UX/V(Rel4.2) R8.2 EWS4800/330 〈日本語入力〉Canna3.1(OS付属) / Onew2.2.7a 〈コンパイラ〉cc(OS付属・NEC基本モード) 〈コメント〉 onew、jvimともに、サイトローカルな設定変更以外はmake一発。 =>Linux<====================================================== <川藤@アンリツ> 1. Linux 1.1.50 DECpc425NC 〈バージョン〉jvim2.0qβ4 〈日本語入力〉Canna 3.2 + Wnn 4.109 / Onew 2.2.8+ 〈コンパイラ〉gcc 2.5.8 (shlib 4.5.26) 〈コメント〉 jvimはmake euc一発('_POSIX_SOURCE'が二重定義とのwarningは出ま すが)。BonewはONEW_CONFでCC = gcc、CFLAGS = -O2を指定してmake。 なお、Canna・WnnのインストールにはJE 0.9.5(Laser5 vol.3 CD-ROM) を使いました。 -------------------------------------------------------------- <田中@東芝> 2. Linux 1.0 + libc.4.5.24(Cannaのみ) IBM-PC 互換機 <日本語入力> Canna3.2β2 / Onew2.2.4-- <コンパイラ> gcc 2.5.8 <コメント> onew2.2.4-- は sys/sys.h の 48 行目を > #define READYCC(fp) (fp->_IO_read_end - fp->_IO_read_ptr) に変更。 # onew2.2.4で修正されました。 ONEW.CONF を canna 専用に書き換えて make。 jvim2.0p-beta1 は make 一発 ------------------------------------------------------------- <永田@新日鉄> 3. Linux 1.0(Wnnのみ) IBM PC 互換機(i486DX2-66MHz) 〈日本語入力〉Wnn(4.108)/ Onew2.2.0 〈コンパイラ〉gcc(2.4.5) (lib[cm].so.4.4.4, ld.so(1.3)) 〈コメント〉 リンク時に以下のエラーが発生し、makeに失敗する。 : /usr/X386/lib/libjd.a(rk_main.o): Undefined symbol _sigsetjmp referenced from text segment : [原因] Wnn(libjd.a)を作成した時のlibc.a(4.3? バイナリ配布されていたもの) と、jvimコンパイル時のlibc.a(4.4.4)のバージョンが違っていた。 libc4.3.3以前ではsigsetjmpはlibc.aに含まれていたが、それ以降 ではsigsetjmpはマクロ定義となったため、libc4.3.3以前のlibc.a でコンパイルされたlibjd.aでは、sigsetjmpが未定義となってしまう (のではないかと思われる) =>NEWS<======================================================= <川藤@アンリツ> 1. SONY NEWS-OS Release 4.1C #0 NWS-1750 〈バージョン〉jvim2.0qβ4 〈日本語入力〉 Wnn4.03 / Onew2.2.8+ 〈コンパイラ〉 cc(付属) 〈コメント〉 make NEWS(make eucができないのでJPCODEを変更しました)。 =>HP-UX<====================================================== 1. HP-UX A.09.01 HP 〈日本語入力〉Canna 3.2 + Wnn4.109/ Onew2.2.6 〈コンパイラ〉cc(購入) 〈コメント〉 % setenv LANG C としておくのがお勧めです。 Canna作成時には、INSTALL.jpの付録Aを読むこと。 ONEWでは、ONEW_CONFのLDOPSのコメントアウトを外す。 ------------------------------------------------------------- <青柳@新日本製鉄> 2. HP-UX 9.03 (Cannaのみ、付属のcc) HP9000/715 〈日本語入力〉Canna 3.2 / Onew2.2.6 〈コンパイラ〉cc(付属) 〈コメント〉 ・jvim の Makefile の HP-UX を Onew + Canna をリンクするように変更。  makefile.junxの HP-UX: @echo 'HP-UX' LANG=C;export LANG;$(MAKE) 'MACHINE = -DBSD_UNIX -DTERMINFO' $(TARGET)  を HP-UX: @echo 'HP-UX' LANG=C;export LANG;$(MAKE) $(TARGET) ¥ 'MACHINE = -DBSD_UNIX -DTERMINFO' ¥ 'JPDEF = -DONEW' 'JPLIB = -lonew -lcanna'  に変更。 ・Onew の ONEW_CONF の、 WNN_DICDIRS = '"pubdic/%s.dic;usr/$$USER/%s.h",¥ "sys/%s.dic;usr/$$USER/%s.h"' を1行にしないと、プリプロセッサが誤動作(?)する。 # 右辺の中にセミコロンがあると、行末の ¥ が効かないようで、 # 1行とならない。原因不明。 ## 別途購入したccではこの問題は起こりませんでした。 =>IRIX<======================================================= <青柳@新日本製鉄> 1. IRIX 4.0.5 SGI 〈日本語入力〉Canna 3.2 / Onew2.2.6 〈コンパイラ〉cc(付属) 〈コメント〉 ・Onewコンパイル時には、SGI_CC にてK&Rモードにする。 % setenv SGI_CC -cckr ・4Dgifts に入っている Wnn を使ってみたが、うまくいかなかったので Cannaのみの組み込み。 ------------------------------------------------------------- <小島@三菱重工> 2. IRIX 5.2 SGI 〈バージョン〉jvim2.0p 〈日本語入力〉Wnn4.019(? 付属のもの) + Canna 3.2 / Onew2.2.8 〈コンパイラ〉cc(付属) 〈コメント〉 ・onew2.2.8 には以下のパッチを当てる。 # onew2.2.8+で修正しました。 --- sys/termio.c.org Tue Aug 23 19:01:40 1994 +++ sys/termio.c Tue Aug 23 19:01:59 1994 @@ -4,6 +4,7 @@ #if defined(hpux) ¥ || defined(solaris) ¥ || defined(nec_ews) ¥ + || defined(__sgi) ¥ || defined(__linux__) ¥ || defined(_bufsiz) ・jvim2.0p には以下のパッチを当てる。 # jvim2.0qβ4で修正しました。 --- jvim2.0p.org//src/unix.c Tue Jun 21 20:06:04 1994 +++ jvim2.0p/src/unix.c Tue Aug 23 19:04:20 1994 @@ -96,7 +96,9 @@ static int RealWaitForChar __ARGS((int)); static void fill_inbuf __ARGS((void)); #ifdef USL -static void sig_winch __ARGS((int)); +# ifndef __sgi + static void sig_winch __ARGS((int)); +# endif /* ndef __sgi */ #else # if defined(SIGWINCH) && !defined(linux) && !defined(__alpha) && !defined(mips) && !defined(_SEQUENT_) && !defined(SCO) && !defined(SOLARIS) && !defined(ISC) static void sig_winch __ARGS((int, int, struct sigcontext *)); ・IRIX 日本語環境の Wnn には V3 互換ライブラリがついてこないので、 V3 互換ライブラリを通常の Wnn ディストリビューションから構築する必要がある。 =>Next<======================================================= <白石@キャノン> 1. NeXT (モトローラ: OS3.0J, インテル: OS3.1J) 〈バージョン〉jvim2.0p 〈日本語入力〉Canna2.2pl4 / Onew2.2.8 〈コンパイラ〉cc(付属) 〈コメント〉 onew2.2.8 ・sys/sys.h の27行目付近に || defined(NeXT) ¥ を加える. ・stabs/_Wnn.cの KkEngine ONEW_WnnKanakan; を KkEngine ONEW_WnnKanakan ={ 0 }; stabs/_WnnRomkan.c の RkEngine ONEW_WnnRomkan; を RkEngine ONEW_WnnRomkan ={ 0 }; とそれぞれ変更. # Wnn は組み込まないのだが... # 以上、onew2.2.8+では修正してあります。 この変更をせず,make 中で最後に onew をリンクする cc -o onew onew.o sys/hpux.o libonew.a -lcanna を cc -o onew onew.o sys/hpux.o stabs/_Wnn.o stabs/_WnnRomkan.o¥ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ libonew.a -lcanna とする必要があった.なお、^^^^^^^^^^^ の部分は jvim のリンク時にも必要. ・NEXTSTEP for Intel では16ビット幅 wchar_t 用の libcanna16 を使うた め,モトローラで -lcanna としたところを -lcanna16 とした. jvim ・JPLIB は次のようにした. JPLIB = -lonew -lcanna (モトローラ) JPLIB = -lonew -lcanna16 (インテル) ・make BSD 'JPCODE = -DJP=¥".EE¥"' でコンパイル.Terminal.app 等で使うことを考えると,表示・ファイルとも euc にしておいた方がいいでしょう. =>BSD/386<==================================================== <保黒@中部大> 1. BSD/386 1.1 IBM-PC互換機 〈日本語入力〉Canna 2.2 pl4 / Onew2.2.6 〈コンパイラ〉cc(gcc 1.42), gcc2(gcc2.5.8) =>FreeBSD<==================================================== <向@ウインシステム> 1. FreeBSD 1.1 IBM-PC互換機 〈バージョン〉jvim2.0p 〈日本語入力〉Canna 3.2 / Onew2.2.8 〈コンパイラ〉cc(付属:gcc 2.4.5) 〈コメント〉 Canna32 の INSTALL.jp の付録 A.6 を読むこと。 src/Makefileに下記を追加して make 一発 # jvim2.0q4からは登録されました。 onew 2.2.8 FreeBSD patch sys/sys.h と sys/regex.c の defined(bsdi) の後ろに || defined(__FreeBSD__) を追加。 # onew2.2.8+からは追加されました。 =>Apple A/UX<================================================= <武田@東芝> 1. Apple A/UX 3.01 Macintosh Apple A/UX 3.01 〈日本語入力〉Canna 3.2 / Onew2.2.7 〈コンパイラ〉cc(付属) 〈コメント〉 下記パッチ+ライブラリパス設定でmake一発 # 本版のjvimでは、すでにパッチをあてています。  gccでのコンパイルには、memmoveがstring.hに既にプロトタイプ宣言をして あるため、unix.h/alloc.cのmemmove周りの修正が必要 onew2.2.7 Apple Macintosh A/UX3.01 patch 1."ONEW_CONF"に以下を設定 MISCLIB = -lPW CFLAGS = -O -DAUX3 2."sys.h", "regex.h"の2つのファイルに付属のパッチをあてる # onew2.2.7aで、このパッチをあてました。 =>4.3BSD<===================================================== <川藤@アンリツ> 1. 4.3BSD MC68030 <日本語入力> Wnn4.03 / Onew2.2.7b <コンパイラ> cc(付属) <コメント> make PureBSD43でOK。onewはsys/MakefileにCFLAGS = -DpureBSD43を 追加すればOK。