(ここの画面を小さくまとめるため、あるいは自分の便利の為だけに)次の変数を設定しておくsetenv FTP /home/ftp/pub/emacs-20.3+c+w+s setenv PUB /home/ftp/pub/emacs-20/20.3-patches tar zxf /pub/Mule/emacs-20.3.tar.gz tar zxf /pub/Mule/leim-20.3.tar.gz tar zxf $FTP/20.3+canna+wnn+sj3-19981022.tar.gz cd emacs-20.3 patch -s -p1 < ../20.3+canna+wnn+sj3-19981022/20.3+canna+wnn+sj3-19981022.patch patch -s -p1 < $PUB/emacs-20.3-gnulinux.patch-mef patch -s -p1 < $PUB/emacs-20.2-xaw3d.patch patch -s -p1 < $PUB/emacs-20.2-gctags.patch patch -s -p1 < $PUB/emacs-20.3-ppc.patch-mef patch -s -p1 < $PUB/emacs-20.3-gnulinux-ppc-MEF cd .. # 今回から、原譜木(source tree) の中でなく、隣で作業するようにして見た mkdir emacs-20.3-work cd emacs-20.3-work ln ../emacs-20.3/src/ppc.ldscript . # 違う file system なら、cp か ln -s とする ../emacs-20.3/configure \ --with-wnn4 \ --with-wnn-includes=/usr/local/include/wnn \ --with-wnn-libraries=/usr/local/lib \ --with-canna \ --with-canna-includes=/usr/local/canna/include \ --with-canna-libraries=/usr/lib \ --with-sj3 \ --with-x \ --with-x-toolkit \ --with-gcc time make make[1]: Leaving directory `/usr/src/making/emacs-20.3-work/leim' 734.990u 64.910s 17:20.05 76.9% 0+0k 0+0io 124984pf+0w makoto@harry 21:11:10/981030(...making/emacs-20.3-work)> src/emacs -q で起動して見る。 その他にも動作確認をする。
(ここの画面を小さくまとめるため、あるいは自分の便利の為だけに)次の変数を設定しておくsetenv FTP /home/ftp/pub/emacs-20.3+c+w setenv PUB /home/ftp/pub/emacs-20/20.3-patches tar zxf /pub/Mule/emacs-20.3.tar.gz tar zxf /pub/Mule/leim-20.3.tar.gz tar zxf $FTP/20.3+canna+wnn-19980922.patch.tar.gz cd emacs-20.3 patch -s -p1 < ../20.3+canna+wnn-19980922/20.3+canna+wnn-19980922.patch patch -s -p1 < $PUB/emacs-20.3-gnulinux.patch-mef patch -s -p1 < $PUB/emacs-20.2-xaw3d.patch patch -s -p1 < $PUB/emacs-20.2-gctags.patch patch -s -p1 < $PUB/emacs-20.3-ppc.patch-mef patch -s -p1 < $PUB/emacs-20.3-gnulinux-ppc-MEF ln src/ppc.ldscript . ./configure \ --with-wnn4 \ --with-wnn-includes=/usr/local/include/wnn \ --with-wnn-libraries=/usr/local/lib \ --with-canna \ --with-canna-includes=/usr/local/canna/include \ --with-canna-libraries=/usr/lib \ --with-x \ --with-x-toolkit \ --with-gcc time make 以前に以下の問題があった /usr/local/lib/libwnn.so: undefined reference to `crypt' collect2: ld returned 1 exit status と出てしまうので、とり敢えず cd src して、gcc の文字を切貼りして、 -lcrypt を加えて cd .. make でよけて通る。 しかし emacs-20.3-gnulinux-ppc-MEF を変更したので、もうこれは出ないと思う make install (もし以前に emacs-canna を入れていると、 /usr/local/share/emacs/site-lisp/canna.el があって、これが先に有 効になってしまう可能性がある。canna-dl.el canna-dl.elc などと名前を 変更する必要があると思う) setenv CANNAHOST localhost setenv JSERVER localhost Canna: M-x load-library RET canna RET (多分不要) M-x canna C-o で ローマ字入力になり、Space で変換する。 Wnn: M-x load-library RET canna RET (多分不要) M-x egg:toggle-egg-mode-on-off RET C-\ で ローマ字入力になり、Space で変換する。
日記 | はじめに戻る | 20.2 | 20.3 | 20.3 + dl | 20.3 +Canna +Wnn | 20.3 +Canna +Wnn +Sj3
emacs-20.3 + dynamic-loading + canna.so を動かして見た。 (ここの画面を小さくまとめるために、次の変数を設定しておく)日記 | はじめに戻る | 20.2 | 20.3 | 20.3 + dl | 20.3 +Canna +Wnn | 20.3 +Canna +Wnn +Sj3setenv PUB /home/ftp/pub/emacs-20/20.3-patches/ tar zxf /pub/Mule/emacs-20.3.tar.gz tar zxf /pub/Mule/leim-20.3.tar.gz cd emacs-20.3 patch -s -p1 < /pub/Mule/emacs-20.3-dl.diff patch -s -p1 < $PUB/emacs-20.3-gnulinux.patch-mef patch -s -p1 < $PUB/emacs-20.2-xaw3d.patch patch -s -p1 < $PUB/emacs-20.2-gctags.patch patch -s -p1 < $PUB/emacs-20.3-ppc.patch-mef patch -s -p1 < $PUB/emacs-20.3-gnulinux-ppc-MEF patch -s -p1 < $PUB/emacs-20.3-export-dynamic-mef ln src/ppc.ldscript . ./configure --with-gcc --with-x-toolkit=yes --with-x time make make install ここで、canna-3.5b2 の make install emacs-canna の設置 をしてから、emacs を起動し、 M-x load-library RET canna RET M-x canna C-o で ローマ字入力になり、Space で変換する。 (*1) # emacs-20.2.spec を見ていたら、次の字がある。 # ln src/ppc.ldscript lib-src # でも次の方が正しい気がする。 # ln src/ppc.ldscript . (*2) # configure した後で、config.cache の中を見ると # emacs_cv_x11_version_6=${emacs_cv_x11_version_6='no'} # という字があった。これではうまく行かない気がする。 # src/Makefile:ALL_LDFLAGS = -R/usr/X11R6/lib -T ppc.ldscript $(LDFLAGS) # が原因 ? src/m/powerpc.h の最後の行を次のようにして見る。 # #define LD_SWITCH_MACHINE -Xlinker -T -Xlinker ppc.ldscript
root@harry 21:09:42/980812(...share/emacs)# mkdir 20.2.99 root@harry 21:10:05/980812(...share/emacs)# cd 20.2.99 root@harry 21:10:10/980812(...emacs/20.2.99)# ln -s ../20.2.97/site-lisp .しておいて src/emacs と入力すると mew/semi-gnus が問題なく動く。 上の symbolic link は外しておいて make install する。
makoto@harry 23:01:33/980729(...making/emacs-20.2.98)> patch -s -p1 < $PUB/emacs-20.2-gnulinux.patch-mef 1 out of 5 hunks FAILED -- saving rejects to config.sub.rej と言われてしまう。が重要そうではないので無視して先に行く。 beos が増えているので、patch が当っていない。 どうも linux-gnu という字を linux に戻している patch のようだ。 更に、 temacs を作るところで何故か /usr/X11R6/lib/libXt.so: undefined reference to `SmcSaveYourselfDone' /usr/X11R6/lib/libXt.so: undefined reference to `IceConnectionNumber' のような行がいくつか出ている。-lICE -lSM を手で加えてしまう。 も同じだった。実際には次のように加えている。cd src して、切貼して、 -lXt -lXext -lX11 -lICE -lSM -lm -lgcc のように加えて、その後 cd ../ してから、また makeemu*.el だけは 20.2.97/site-lisp に入っているので、とりあえず link を張って古いものが使えるようにして、make install する前にsrc/emacs で起動して見たら、動く。Mule 4.0 (花宴)と書いてある。
tar zxf /pub/Mule/emacs-etl-20.2.97.tar.gz patch -s -p0 < /pub/Mule/20.2.97.patch.1 setenv PUB /home/ftp/pub/emacs-20/20.2.93-patches/ cd emacs-20.2.97/ patch -s -p1 < $PUB/emacs-20.2-gnulinux.patch-mef patch -s -p1 < $PUB/emacs-20.2-xaw3d.patch patch -s -p1 < $PUB/emacs-20.2-gctags.patch patch -s -p1 < $PUB/emacs-20.2-ppc.patch-mef ./configure --with-gcc --with-x-toolkit=yes --with-x time make temacs を作るところで何故か /usr/X11R6/lib/libXt.so: undefined reference to `SmcSaveYourselfDone' /usr/X11R6/lib/libXt.so: undefined reference to `IceConnectionNumber' のような行がいくつか出ている。-lICE -lSM を手で加えてしまう。SunOS4.1.4 で同じものを用意した時には ~/.Xdefaults におまじないが必要だった が、こちら linux-pmac ではこれは必要なかった。
make[1]: Leaving directory `/usr/src/making/emacs-20.2.97/leim' 680.750u 75.870s 15:50.33 79.6% 0+0k 0+0io 121806pf+0w src/emacs Error: Unresolved inheritance operation
日記 | はじめに戻る | 20.2 | 20.3 | 20.3 + dl | 20.3 +Canna +Wnn | 20.3 +Canna +Wnn +Sj3
62 10:06 tar zxf /pub/Mule/emacs-20.2.95.tar.gz 63 10:08 tar zxf /pub/Mule/leim-20.2.95.tar.gz 64 10:08 setenv PUB /home/ftp/pub/emacs-20/20.2.93-patches 65 10:08 cd emacs-20.2.95 66 10:08 patch -s -p1 < $PUB/emacs-20.2-gnulinux.patch-mef 67 10:09 patch -s -p1 < $PUB/emacs-20.2-xaw3d.patch 68 10:09 patch -s -p1 < $PUB/emacs-20.2-gctags.patch 69 10:09 patch -s -p1 < $PUB/emacs-20.2-ppc.patch-mef 72 10:12 cd src 74 10:12 patch -s -p0 < ~/Mail/ml/pretest/41 75 10:12 cd .. 70 10:09 ./configure --with-gcc --with-x-toolkit=yes --with-x 76 10:13 time make 77 10:34 src/emacs makoto@harry 10:28:26/980613(...making/emacs-20.2.95)> src/emacs Error: Unresolved inheritance operation xmenu.c のうち、次の一つ目は行っていて、二つ目は行っていない。 1711: menubar_widget = lw_create_widget ("menubar", "menubar", id, first_wv, xmenu_show 1993: menu = lw_create_widget ("popup", first_wv->name, menu_id, first_wv, 2267: menu = lw_create_widget (first_wv->name, "dialog", dialog_id, first_wv, xfns.c のうちの XtCreateWidget は行っていて、 XtVaGetValues には行っていない。
rpm -ihv emacs-20.2-4a.src.rpm すると ../../redhat/SOURCE に次のようなものが入る。この中の spec というのを見て、中に書いてある順に patch を当てる。どこに入るかなどは こちら に、 その他種々な設定はこちら に書い てある。 そう言えば、最初に実行形式で rpm を使って入れようした時に、 xaw3d がないというので、それだけは入れていて、なお、 -lXaw3d がないと言うことがあったので、次の一つ目 link は手で張った。11008512 Feb 28 10:04 emacs-20.2.tar.gz 13125 Feb 25 19:20 emacs-20.2.spec 19832 Feb 25 19:16 emacs-20.2-ppc.patch 95 Nov 7 02:03 emacs.wmconfig 207344 Nov 4 07:16 mbsk-20.2.tar.gz 8032 Oct 24 05:03 emacs-20.2-gnulinux.patch 971 Oct 24 04:53 emacs-20.2-xaw3d.patch 1884 Oct 24 04:41 emacs-20.2-noecoff.patch 4763 Oct 24 04:39 emacs-20.2-gctags.patch ↓もしその一つずつを入手したいという時はここも見て下さい。 ftp.ki.nu or (for 20.3) cd emacs-20.2 patch -s -p1 < patch というように p1 を使う 実際の記録。(時刻は実は合っていません) 349 10:55 tar zxf /pub/Mule/emacs-20.2.tar.gz 350 10:56 cd emacs-20.2 351 10:56 patch -s -p1 < /usr/src/redhat/SOURCES/emacs-20.2-gnulinux.patch 352 10:56 patch -s -p1 < /usr/src/redhat/SOURCES/emacs-20.2-xaw3d.patch 353 10:56 patch -s -p1 < /usr/src/redhat/SOURCES/emacs-20.2-gctags.patch 354 10:56 patch -s -p1 < /usr/src/redhat/SOURCES/emacs-20.2-noecoff.patch 355 10:57 patch -s -p1 < /usr/src/redhat/SOURCES/emacs-20.2-ppc.patch 357 10:57 ./configure --with-gcc --with-x-toolkit=yes --with-x 358 10:58 time make 473.270u 64.530s 9:59.22 89.7% 0+0k 0+0io 109080pf+0w makoto@harry 11:08:12/980228(...making/emacs-20.2)> make -n install 10 分しかかからない。S-7/300U と同じくらいの速さ。 実は share 以下は他の機械で用意してあって共有出来るので、 make install-arch-dep とする。
15 Feb 28 10:35 /usr/X11R6.3/lib/libXaw3d.so -> libXaw3d.so.6.1* 15 Feb 28 09:24 /usr/X11R6.3/lib/libXaw3d.so.6 -> libXaw3d.so.6.1* 389631 Jun 17 1997 /usr/X11R6.3/lib/libXaw3d.so.6.1*
Norio Kubotau さんの画面 を見ていたら rpm --rebuild を使えと書 いてある。 一方、emacs-20.2 を用意してくれた Gary Thomas からは次のようにする のが正しいのだと教わってしまった。
(as patched for Linux/PPC) # rpm -iv emacs-20.2*src.rpm # cd /usr/src/redhat/SPECS # rpm -bp emacs*spec // Creates the patched sources # cd ../BUILD/emacs*