hns - 日記自動生成システム - Version 2.19.9

先月 2004年10月 来月
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
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2004年10月31日() 旧暦 [n年日記] [更新:"2004/10/31 23:59:13"]

#1 [NetBSD]

0 > setenv boot-device scsi/sd@0:0  ok
0 > setenv boot-file /bandit/Apple53C875Card/sd@0:0  ok


2004年10月30日() 旧暦 [n年日記] [更新:"2004/11/01 09:08:48"]

#1 [Linux]

Fedore Core 1 の上で linux-ppc 用のクロスコンパイラを作って見る。 が非常に役に立つ。 などを材料にする。--target=sparc-linux と書いてあるところは --target=powerpc--linux とする (ハイフン二つ)。

following part may be wrongly cross-compiled:

samba-3.0.7/source/lib/util-sec.c
/****************************************************************************
abort if we haven't set the uid correctly
****************************************************************************/
static void assert_uid(uid_t ruid, uid_t euid)
{
	if ((euid != (uid_t)-1 && geteuid() != euid) ||
	    (ruid != (uid_t)-1 && getuid() != ruid)) {
		if (!non_root_mode()) {
			DEBUG(0,("Failed to set uid privileges to (%d,%d) now set to (%d,%d)\n",
				 (int)ruid, (int)euid,
				 (int)getuid(), (int)geteuid()));
			smb_panic("failed to set uid\n");
			exit(1);
		}
	}
}

/****************************************************************************
abort if we haven't set the gid correctly
****************************************************************************/
static void assert_gid(gid_t rgid, gid_t egid)
{
	if ((egid != (gid_t)-1 && getegid() != egid) ||
	    (rgid != (gid_t)-1 && getgid() != rgid)) {
		if (!non_root_mode()) {
			DEBUG(0,("Failed to set gid privileges to (%d,%d) now set to (%d,%d) uid=(%d,%d)\n",
				 (int)rgid, (int)egid,
				 (int)getgid(), (int)getegid(),
				 (int)getuid(), (int)geteuid()));
			smb_panic("failed to set gid\n");
			exit(1);
		}
	}
}
I am afraid I did not see -fPIC, -DPIC option when cross compiling being done. The followind line is from NetBSD/macppc native compiling, but I may be wrong:
Compiling lib/util_sec.c with -fPIC -DPIC

patch configure.in, autoconf, make:

patch -s < samba-3.0.5-cross
autoconf
env CC=/usr/local/bin/powerpc--linux-gcc ./configure --host=i386--linux --enable-cross

objdump:

/usr/local/bin/powerpc--objdump -d bin/smbd |less
10190fbc <assert_uid>:
10190fbc:       94 21 ff e0     stwu    r1,-32(r1)

10190fe0:       41 82 00 10     beq-    10190ff0 <assert_uid+0x34>
10190fe4:       48 0d e8 05     bl      1026f7e8 <ports.6+0x6b4>


2004年10月29日(金) 旧暦 [n年日記] [更新:"2004/10/30 10:10:18"]

#1 [無題] 東京国際フォーラム

8:55 - 17:10 
くらい。所謂説明員。


2004年10月26日(火) 旧暦 [n年日記] [更新:"2004/10/26 20:51:50"]

#1 [無題] カメラを水に ..

無水アルコールで水抜き USBメモリー、洗濯機にかけちまった

#2 [hns] LASTCHANGE -> LASTUPDATE に変更

.emacs:

(add-hook 'hnf-mode-hook
          (lambda ()
            (set (make-local-variable 'time-stamp-start)
                 "LASTUPDATE [\t ]*\\\\?[\"<]+")
            (set (make-local-variable 'time-stamp-format)
                 "%04y/%02m/%02d %02H:%02M:%02S")))
...
(setq  auto-insert-directory "~/mule/insert/" )
(auto-insert-mode 1)
...
(add-to-list 'auto-insert-alist '("\\.hnf\\'" . "hns.hnf"))
...

mule/insert/hnf.hns:

 LASTUPDATE "2004/08/09 23:43:33"
 OK
 CAT 
 NEW 
 LNEW
 SUB

#3 [build.sh] 20041017ts

何かを build している時に
cc -o praliases -L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib praliases.o /export/pkgsrc/mail/sendmail/work/sendmail-8.13.1/obj.NetBSD.1.6ZI.macppc/libsmdb/libsmdb.a /export/pkgsrc/mail/sendmail/work/sendmail-8.13.1/obj.NetBSD.1.6ZI.macppc/libsmutil/libsmutil.a /export/pkgsrc/mail/sendmail/work/sendmail-8.13.1/obj.NetBSD.1.6ZI.macppc/libsm/libsm.a -lresolv -lutil -L/usr/pkg/lib groff -Tascii -man praliases.8 > praliases.0 || cp praliases.0.dist praliases.0
Making all in:
/export/pkgsrc/mail/sendmail/work/sendmail-8.13.1/rmail
Configuration: pfx=, os=NetBSD, rel=1.6ZI, rbase=1, rroot=1.6ZI, arch=macppc, sfx=, variant=optimized
bsd/CORE -Wl,-R/usr/pkg/lib/perl5/5.6.1/powerpc-netbsd/CORE -Wl,-R/usr/pkg/lib/perl5/5.6.1/powerpc-netbsd/CORE -lperl -lchasen
ld: cannot find -lgcc_s_pic
*** Error code 1
何かというのは sendmail なのだろうか ? 何故 -chasen が入っているかはかなり不思議だが
とりあえず、作ったところにあったものを写す
ttyp1:makoto@umax  10:45:35/041025(...libgcc_s/obj)> ls -l libgcc*
-rw-r--r--  1 root  wheel   1148 Oct 21 22:21 libgcc.map
lrwxr-xr-x  1 root  wheel     15 Oct 21 23:12 libgcc_s.so@ -> libgcc_s.so.1.0
lrwxr-xr-x  1 root  wheel     15 Oct 21 23:12 libgcc_s.so.1@ -> libgcc_s.so.1.0
-rwxr-xr-x  1 root  wheel  42972 Oct 21 23:12 libgcc_s.so.1.0*
-rw-r--r--  1 root  wheel  79194 Oct 21 22:21 libgcc_s_pic.a
ttyp1:makoto@umax  10:45:38/041025(...libgcc_s/obj)> sudo cp libgcc_s_pic.a /usr/lib
Password:
ttyp1:makoto@umax  10:45:56/041025(...libgcc_s/obj)> pwd
/amd/st4200/20041017/checkout/src/gnu/lib/libgcc3/libgcc_s/obj
ttyp1:makoto@umax  10:47:02/041025(...libgcc_s/obj)> 
これで問題はなくなる。

さて、build.sh の install の時に含めるようにするには ?:


#4 [NetBSD][src] cvsync を試して見る

日本語の情報はあまりない ? というよりも サーバ が少ない ? (直接 hrs さんに教えてもらった)
finger @info.allbsd.org
ってやると素適。

/usr/pkgsrc/devel/cvsync/ で make && make install:

/usr/pkg/etc/cvsync.conf に次のように書いておく
 config {
         hostname  cvsync.allbsd.org

         collection {
                 name netbsd release rcs
                 prefix /export/cvsync
         }
 }
これで cvsync と入力するだけ。
3.2G くらい取って来た ?
3151264 /export/cvsync
実は選択的にもって来る方法が分らなかった。
ttypa:makoto@st4200  21:22:55/041026(/export/cvsync)> du -sk *
64      CVSROOT
187696  htdocs
23520   othersrc
418464  pkgsrc
1869580 src
651970  xsrc
どの 機械/OS でも使えるってうれしい。


2004年10月25日(月) 旧暦 [n年日記] [更新:"2004/10/25 09:25:51"]

#1 [hns] 更新: "2004/10/25 09:08:43"

最近こんなの付けているが、いろいろな意味で良くない。 そこで ユーザ変数にして見る



2004年10月24日() 旧暦 [n年日記]

#1 [Emacs] make install

While make install of Emacs 21.3.50,
Shared object "libXmu.so.6" not found
*** Error code 1

Stop.
make: stopped in /export/emacs-20041016/leim
*** Error code 1

find /usr -name libXmu.so.6\*:

/usr/X11R6/lib/libXmu.so.6.1
/usr/X11R6/lib/libXmu.so.6
/usr/X11R6/lib/libXmu.so.6.2
find: /usr/games/hide: Permission denied
/usr/pkg/share/x11-links/lib/libXmu.so.6
/usr/pkg/share/x11-links/lib/libXmu.so.6.2
find: /usr/pkg/pgsql: Permission denied
makoto@st4200 20:07:44/041024(/export/emacs-20041016)>
tech-pkg 2004/05/13

replace x11-links:

138	20:11	cd /export/pkgsrc/x11/x11-links
145	20:12	sudo pkg_delete -f x11-links
146	20:12	sudo make install
This fixed the problem. ... No, not yet
ttyp3:makoto@st4200  21:39:26/041024(~)> /usr/local/bin/emacs
Shared object "libXmu.so.6" not found
ttyp3:makoto@st4200  21:39:27/041024(~)> 
% env LD_LIBRARY_PATH=/usr/pkg/share/x11-links/lib emacs
This works OK.

site lisp as of today:

ttyp8:makoto@harry  22:52:48/041024(~)> ls -1 $SITELISP/
a-files/
apel/
apel-10.6/
auctex/
auctex-20030822/
auctex-20040614/
flim-1.14.5/
hnf-mode-020329/
id-utils.el
id-utils.elc
irchat-2.4jp24k/
liece-1.4.7/
lookup-1.3/
mhc-20040121/
monk-8/
mu-8.1/
mu-cite-200009041123/
po-mode.el
po-mode.elc
riece/
semi-1.14.5/
subdirs.el
tc-2.3/
tc-2.3.1/
tex-site.el
tramp/
tramp-stable/
url-20020214/
w3-20020214/
w3m-1.4/
wl/
wl-2.10-1-w3m-1.4/
wl-2.10.2/


2004年10月23日() 旧暦 [n年日記]

更新: "2004/10/24 00:42:35"

#1 [NetBSD][pkgsrc] print/ja-ptex で make package

      2542 Oct 23 06:46 ja-ptex-1.0nb1.tgz
    237834 Oct 23 06:46 dvipdfmx-0.0.0.20031116nb1.tgz
   2462776 Oct 23 06:45 ghostscript-gnu-7.07.tgz
   2742259 Oct 23 06:40 ghostscript-fonts-6.0.tgz
   5453677 Oct 23 06:39 adobe-cmaps-20030924.tgz
    204798 Oct 23 06:39 ja-vfxdvik-22.40v.j1.14nb4.tgz
    409178 Oct 23 06:37 ja-vflib-lib-2.24.2.tgz
    224500 Oct 23 06:36 freetype-lib-1.3.1nb1.tgz
     93297 Oct 23 06:35 ja-jsclasses-030624nb1.tgz
   1257313 Oct 23 06:35 ja-ptex-bin-3.1.2nb2.tgz
   4277067 Oct 23 06:25 ja-ptex-share-2.1nb2.tgz
      2597 Oct 23 06:24 teTeX-2.0.2nb1.tgz
     44829 Oct 23 06:24 texi2html-1.64nb1.tgz
  22869745 Oct 23 06:24 teTeX-sharesrc-2.0.2.tgz
   9913055 Oct 23 06:23 teTeX-bin-2.0.2nb1.tgz
   1506544 Oct 23 06:11 t1lib-5.0.2nb2.tgz
   1174580 Oct 23 06:09 libwww-5.4.0nb2.tgz
     29171 Oct 23 06:02 dialog-0.6znb2.tgz

#2 [CVS] checkout時の -d 選択

checkout時の-dオプションは、
「チェックアウトするモジュール名のトップディレクトリを変更する」
という意味なのですが
どうも僕が勘違いをしているらしい。でもないのかな → 裏枝 ?

例えば etc を管理するとします。機械毎に etc は違う:

ので、etc-hoge とかいうモジュール名にします。
% cd /etc
% cvs -d hoge@server:/respoistory co -d . etc-hoge
とかしたくなるのですが 手元のものや .. NFS mount した repository なら出来るが ssh だと出来ない ?
cvs server: existing repository HOGE does not match HOGE/module

man cvs:

Use the -d dir option to create a directory called
dir for the working files, instead of using the module name.
僕の理解は合っている気がするなぁ。

サーバで処理される場合、意味が変る ?:

しょうがないので以前にやっていたような方法で、
env CVS_RSH=ssh cvs -d username@server:/repository co -N -d /etc etc-hoge
env CVS_RSH=ssh cvs -d username@server:/repository co etc-hoge
のどちらかで持出しておいて、
mv etc-hoge/CVS ./
すれば、後は問題ない (これは初めて作る時でモジュールは空の時)。

#3 [pkgsrc] mozilla

ttyp1:makoto@st4200 10:49:55/041023(~)> mozilla
/usr/pkg/lib/mozilla/components/libgfx_gtk.so: Undefined PLT symbol "_Z16XineramaIsActiveP9_XDisplay" (symnum = 298)
(こればっかり) OpenOffice.Org FAQ is saying:
undefined symbol: _Z16XineramaIsActiveP9_XDisplay
This is a problem with your headers, add 'extern "C" {' and '}' around '#include <X11/extensions/Xinerama.h>, and then build through libvcl644li.so.
ttyp1:makoto@st4200  10:56:12/041023(...work/mozilla)> find . -type f -exec grep
 extensions/Xinerama.h /dev/null '{}' \;                                        
./configure:    ac_safe=`echo "X11/extensions/Xinerama.h" | sed 'y%./+-%__p_%'` 
./configure:echo $ac_n "checking for X11/extensions/Xinerama.h""... $ac_c" 1>&6 
./configure:echo "configure:8059: checking for X11/extensions/Xinerama.h" >&5   
./configure:#include <X11/extensions/Xinerama.h>                                
./configure.in:    AC_CHECK_HEADER(X11/extensions/Xinerama.h)                   
./gfx/src/gtk/nsScreenGtk.h:#include <X11/extensions/Xinerama.h>                
./gfx/src/gtk/nsScreenManagerGtk.cpp:#include <X11/extensions/Xinerama.h>       
./gfx/src/gtk/.deps/nsScreenGtk.pp:  /export/pkgsrc/www/mozilla/work/.buildlink/
include/X11/extensions/Xinerama.h \                                             
./gfx/src/gtk/.deps/nsScreenManagerGtk.pp:  /export/pkgsrc/www/mozilla/work/.bui
ldlink/include/X11/extensions/Xinerama.h \                                      
./configure.in.orig:    AC_CHECK_HEADER(X11/extensions/Xinerama.h)
./config.log:configure:8059: checking for X11/extensions/Xinerama.h
ttyp1:makoto@st4200  DING!/041023(...work/mozilla)> 
--------------------------------------------------------
--- mozilla/gfx/src/gtk/nsScreenGtk.h-orig	2004-04-21 02:14:31.000000000 +0900
+++ mozilla/gfx/src/gtk/nsScreenGtk.h	2004-10-23 11:04:45.000000000 +0900
@@ -44,7 +44,9 @@
 
 #ifdef MOZ_ENABLE_XINERAMA
 #include <X11/Xlib.h>
+extern "C" {
 #include <X11/extensions/Xinerama.h>
+}
 #endif // MOZ_ENABLE_XINERAMA
 
 //------------------------------------------------------------------------
This fixes the above problem. pkg/27369

#4 [web] apache と CVS

Web の中身を cvs 管理下に置く場合、CVS というディレクトリが見えては、 あまり気持が良くない。そこで次のように書いて見た。実は一行目の ~ の意味は分っていない が、「任意のディレクトリの」の意味だろうか。
<Directory ~ "CVS">
    Order allow,deny
    Deny from all
</Directory>

#5 [MHonArc] MHonArc 2.6.10 + Perl 5.6.1 の場合

2003/04/26 に書いたこと と、 2003/04/28 に書いたこと はどのくらい正しいのかな。機械を入替えたら、元に戻ってしまっているので。 MHonArc で処理するときに日本語の Subject: をデコードさせたいのですが (Namazu FAQ より)

#6 [Emacs] 21.3.50 make bootstrap

Symbol's function definition is void: tty-supports-face-attributes-p
make maintainer-clean && ./configure && make bootstrap
emacs-devel/2004/09
   182  23:21   cvs update -dP -C -A
   193  23:48   make maintainer-clean
   194  23:48   ./configure --x-libraries=/usr/X11R6/lib && time make bootstrap
...
Loading vc-cvs...
Wrote /export/emacs-20041016/lisp/cus-load.el
Generating /export/emacs-20041016/lisp/cus-load.el...done
1077.774u 129.043s 20:24.92 98.5%       0+0k 15+8503io 0pf+3w
ttyp1:makoto@st4200  0:09:55/041024(/export/emacs-20041016)> sudo make install

Shared object "libXmu.so.6" not found
*** Error code 1

Stop.
make: stopped in /export/emacs-20041016/leim
*** Error code 1
lrwxr-xr-x 1 root wheel 13 Oct 16 21:04 /usr/X11R6/lib/libXmu.so.6@ -> libXmu.so.6.1
-rwxr-xr-x 1 root wheel 112242 Oct 16 21:04 /usr/X11R6/lib/libXmu.so.6.1*
-rwxr-xr-x 1 root wheel 110413 Sep 25 23:07 /usr/X11R6/lib/libXmu.so.6.2*
日付が逆だな ?

#7 [日記] 中島さん

「あるディレクトリにある、57個の.phpなファイルのある文字列を置換し、ファイル名を変更せずに上書き保存」ってどう書くんだったけ
foreach i ( *.php)
echo $i
mv $i $i.bak
sed -e 's/HOGE/FOO/g' $i.bak > $i
end
かな。最初の echo はもちろん進行状況表示。いらないか。お、bash か。違うな。
for i in   *.php  
 do
  mv $i $i.bak
  sed -e 's/HOGE/FOO/g' $i.bak > $i
done
かな。何と木曜日の日記だった。遅し。


2004年10月22日(金) 旧暦 [n年日記]

更新: "2004/10/23 23:50:26"

#1 [NetBSD][build.sh] build.sh をもう一度実行

ttyp0:makoto@st4200 21:57:30/041021(...checkout/src)> time sudo ./build.sh release > & log-from-scratch-sysinst-ramdisk-list-date -2147474966.731u -2147480760.211s 3:09:03.07 102.0% 0+0k 18337+395973io 31257pf+198w
ところが良く考えたら sysinst の installboot は僕が勘違いしていた。 installboot には link 方式 と copy 方式 が考えられる

link 方式(従前の方式):

  1. link 方式というのは実行時に /boot になる sector の番号を調べて、それを bootxx に埋込む (1kbyte 以内)。
  2. bootxx 自体は 2k から 1kByte 以内に置く bootxx は 2k 以上あるが、そのうち本当に必要な .text は 600 byte くらい。つまり それだけを disk に書いておけば良い。
この方式は全てを設置して最後に行なう。

copy 方式 (最近の素のNetBSD の方式、arch に依存しない):

copy 方式というのは
  1. /usr/mdec/ofwboot をまず /boot に写す
  2. installboot 実行時、つまり設置時に /usr/mdec/bootxx を elf のままの形で(?) 第 2 sector (sector 1) に写す (2kbyte 以内)
この方式は sysinst 環境に写しを持っていれば、いつでもいい

と書いたが、従前と最近の大きな違いは、bootxx を置く形が 素か elf か ということ。

OF3 の時はどうなるのか ? 不明。:

最近 installboot は失敗するようになっていて、これを直すのに乗り気でなかった のは、OF 3 の時には実行してはまずいのでは ? と思っていたから。

最近の方式の場合には、0 sector に書く訳ではなさそうだから、無害かな。

MBR ?:

     Status: Finished
    Command: disklabel -w -r -f /tmp/disktab wd0 'mydisk'
     Hit enter to continue
--------------------------------------------------------------------------------
disklabel: Invalid signature in mbr record 0

installboot: `/usr/mdec/bootxx' cannot be larger than 2048 bytes::

     Status: Command failed
    Command: /usr/sbin/installboot /dev/rwd0a /usr/mdec/bootxx /boot
     Hit enter to continue
--------------------------------------------------------------------------------
installboot: `/usr/mdec/bootxx' cannot be larger than 2048 bytes
installboot: Set bootstrap operation failed
この時点で bootxx が 2k 以上ある ?
-r--r--r--  1 root  wheel    2131 Sep 29 20:18 bootxx
ありそうだ。これはどこから来たもの ?


2004年10月21日(木) 旧暦 [n年日記]

更新: "2004/10/21 22:13:26"

#1 [NetBSD][build.sh] build.sh に 3:05

cpu0 at mainbus0: 7455 (Revision 303), ID 0 (primary)
cpu0: HID0 8410c1bc<TBEN,DPM,ICE,DCE,XBSEN,SGE,BTIC,LRSTK,FOLD,BHT>
cpu0: HID1 80017c80<EMCP,PC0,PC2,PC3,PC4,SYNCBE,ABE>
cpu0: 256KB on-chip L2 cache, 2MB backside L3 cache
な機械で:
ttyp0:makoto@st4200 17:09:22/041021(...checkout/src)> time sudo ./build.sh release > & log-from-scratch-sysinst
792825017.357u -1916514676.563s 3:05:43.29 -62801.-5% 0+0k 15894+434514io 33070pf+219w
何かちょっと数字が ?

sysinst の installboot を変更して見たが:

Index: distrib/utils/sysinst/arch/macppc/md.c
===================================================================
 RCS file: /e/st4200/20041017/Repository/src/distrib/utils/sysinst/arch/macppc/md.c,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 md.c
--- distrib/utils/sysinst/arch/macppc/md.c      19 Oct 2004 06:17:35 -0000      1.1.1.1
+++ distrib/utils/sysinst/arch/macppc/md.c      3 Oct 1936 01:33:31 -0000
@@ -133,8 +133,8 @@
        printf (msg_string(MSG_dobootblks), diskdev);
        cp_to_target("/usr/mdec/ofwboot", bootfile);
        sync();
-       run_program(RUN_DISPLAY, "/usr/sbin/installboot /dev/r%sa %s %s",
-           diskdev, "/usr/mdec/bootxx", bootfile);
+       run_program(RUN_DISPLAY, "/usr/mdec/installboot %s %s /dev/r%sa",
+           bootfile, "/usr/mdec/bootxx", diskdev);
        return 0;
 }
/usr/mdec/installboot なんてないって言われた。確かに、何も入れる前だけれ と、変更前の場合には、/usr/sbin/installboot は起動していると思う。 何が悪いのかな。そう言えば、いつもは Install だけれど、これを試す時には Upgrade を選んだ。
     Status: Command failed
    Command: /usr/mdec/installboot /boot /usr/mdec/bootxx /dev/rwd0a
     Hit enter to continue
--------------------------------------------------------------------
sysinst: execvp /usr/mdec/installboot: No such file or directory
sysinst カーネルに特別に組込んでおく必要があるのか。
distrib/macppc/floppies/ramdisk/list ここらしい。
Index: distrib/macppc/floppies/ramdisk/list
===================================================================
 RCS file: /e/st4200/20041017/Repository/src/distrib/macppc/floppies/ramdisk/list,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 list
--- distrib/macppc/floppies/ramdisk/list        19 Oct 2004 06:17:16 -0000      1.1.1.1
+++ distrib/macppc/floppies/ramdisk/list        21 Oct 2004 12:54:09 -0000
@@ -77,6 +77,7 @@
 COPY   ${DESTDIR}/usr/mdec/bootxx      usr/mdec/bootxx
 COPY   ${DESTDIR}/usr/mdec/mbr         usr/mdec/mbr
 COPY   ${DESTDIR}/usr/mdec/ofwboot     usr/mdec/ofwboot
+COPY   ${DESTDIR}/usr/mdec/installboot usr/mdec/installboot
 
 # various files that we need in /etc for the install
 COPY   ${NETBSDSRCDIR}/etc/group               etc/group
ついでに date を入れておこう。


2004年10月20日(水) 旧暦 [n年日記]

更新: "2004/10/20 23:35:23"

#1 [回線] 01:00-06:00 頃まで止っていた ?


#2 [pkgsrc] mrtg がなくなっていたので ? 入れて見る

network/mrtg で make
===> Verifying reinstall for ../../net/p5-INET6
make: "../../lang/perl5/../../lang/perl5/module.mk" line 40: Malformed conditional (empty(USE_BUILDLINK2:M[nN][oO]))
make: "../../lang/perl5/../../lang/perl5/module.mk" line 40: Missing dependency operator
make: Fatal errors encountered -- cannot continue
/etc/mk.conf に
USE_BUILDLINK2=YES
と書いて見る。ちょっと古いが。 ===> Registering installation for p5-INET6-2.00
p5-INET6-2.00 requires installed package p5-Socket6-0.12
p5-INET6-2.00 requires installed package perl-5.6.1nb10

===> Registering installation for mrtg-2.10.13
mrtg-2.10.13 requires installed package freetype-lib-1.3.1nb1
mrtg-2.10.13 requires installed package gd-2.0.25
mrtg-2.10.13 requires installed package p5-INET6-2.00
mrtg-2.10.13 requires installed package perl-5.6.1nb10

実は止っていなかった。問題は FollowSymLinks is off:

error-log を見たら、次のように書いてあった
Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden:
そこで .htaccess に
Options FollowSymLinks SymLinksIfOwnerMatch Indexes
と書いておく。
それでやはり今朝の 1-6am の間、回線が 止っていた。しかも多分 8:00 -10:30 は更新がされ ていないが、この間には 一台機械が落ちていた。


2004年10月19日(火) 旧暦 [n年日記]

更新: "2004/10/19 16:19:40"

#1 [機械][sendmail] 長く働いた sparc 引退

% uptime
1:36PM  up 456 days, 13:29, 1 user, load averages: 1.18, 1.14, 1.13
% uname -a
NetBSD milano 1.4M NetBSD 1.4M (GENERIC_SCSI3) #0: 
Mon Nov  8 07:53:48 MET 1999     
pk@flambard:/usr/src/sys/arch/sparc/compile/GENERIC_SCSI3 sparc
% ls -l /netbsd
-rwxr-xr-x  2 root  wheel  2398517 Dec 23  1999 /netbsd
5 年くらいかな。仮住いで netboot をして入れたような記憶がある。

新しく交替したのは PowerMac 4400/G3/300:

sendmail-8.13 を入れてもそのままでは外から接続しない:

最近同じことがあったのに忘れてしまった。
 # Enable IPv6.  IPv6 is marked as optional so the configuration file
 # can be used on IPV4-only kernel as well.
-DAEMON_OPTIONS(`Family=inet, address=127.0.0.1, Name=MTA, Modifiers=O')dnl
-DAEMON_OPTIONS(`Family=inet6, address=::1, Name=MTA6, Modifiers=O')dnl
+DAEMON_OPTIONS(`Family=inet, address=0.0.0.0, Name=MTA, Modifiers=O')dnl
+DAEMON_OPTIONS(`Family=inet6, address=::, Name=MTA6, Modifiers=O')dnl
 # MTP AUTH 2004-02-29
初期値は 127.0.0.1 だけ聞いている。


2004年10月17日() 旧暦 [n年日記]

更新: "2004/10/17 23:50:27"

#1 [NetBSD][build.sh] netbsd.h を変更してやり直し

16
ttyp7:makoto@st4200 16:25:43/041017(...checkout/src)> time sudo ./build.sh release >& ../log-netbsd.h-fix-tsubai
9080.576u 3180.164s 4:49:13.16 70.6% 0+0k 22452+365942io 35683pf+246w

古いまま mozilla を作った時:

ttyp9:makoto@st4200 23:15:59/041017(~)> mozilla /usr/pkg/lib/mozilla/components/libgfx_gtk.so: Undefined PLT symbol "_Z16XineramaIsActiveP9_XDisplay" (symnum = 298) ttyp9:makoto@st4200 23:16:11/041017(~)>
これって別の問題か。


2004年10月16日() 旧暦 [n年日記]

更新: "2004/10/16 21:30:33"

#1 [NetBSD][2.0H] いつ R_PPC_REL24 に設定される ?

gnu/dist/binutils/bfd/elf32-ppc.c:

    case BFD_RELOC_PPC_B26:           r = R_PPC_REL24; break;

src/gnu/dist/binutils/gas/config/tc-ppc.c:

5489  /* Determine a BFD reloc value based on the operand information.
5490     We are only prepared to turn a few of the operands into
5491     relocs.  */
5492  if ((operand->flags & PPC_OPERAND_RELATIVE) != 0
5493      && operand->bits == 26
5494      && operand->shift == 0)
5495    fixP->fx_r_type = BFD_RELOC_PPC_B26;
かなり乱暴だけれど、 ここを次のように変更してしまう ?
gnu/dist/binutils/bfd/elf32-ppc.c:
1959     case BFD_RELOC_PPC_B26:             r = R_PPC_REL24;          
...
1971     case BFD_RELOC_32_PCREL:            r = R_PPC_REL32;          
shared library の時だけそうして欲しい訳で、ちょっとまずい ?
-fPIC した時に、このコードを出すのが間違い ?

変更して見たが::

/usr/lib/libgcc_s.so.1: Unsupported relocation type 26 in non-PLT relocations
これは許可一覧の中になかった
case R_TYPE(NONE):
case R_TYPE(32):        /* word32 S + A */
case R_TYPE(GLOB_DAT):  /* word32 S + A */
case R_TYPE(RELATIVE):  /* word32 B + A */
case R_TYPE(COPY):
case R_TYPE(JMP_SLOT):
/usr/include/reloc.h
  0          RELOC_NONE,
  1          RELOC_32,
  2          RELOC_24,
  3          RELOC_16,
  4          RELOC_16_LO,
  5          RELOC_16_HI,    /* RELOC_ADDIS = 5 */
  6          RELOC_16_HA,
  7          RELOC_14,
  8          RELOC_14_TAKEN,
  9          RELOC_14_NTAKEN,
 10          RELOC_REL24,    /* RELOC_BRANCH = 10 */
 11          RELOC_REL14,
 12          RELOC_REL14_TAKEN,
 13          RELOC_REL14_NTAKEN,
 14          RELOC_GOT16,
 15          RELOC_GOT16_LO,
 16          RELOC_GOT16_HI,
 17          RELOC_GOT16_HA,
 18          RELOC_PLT24,
 19          RELOC_COPY,
 20          RELOC_GLOB_DAT,
 21          RELOC_JMP_SLOT,
 22          RELOC_RELATIVE,
 23          RELOC_LOCAL24PC,
 24          RELOC_U32,
 25          RELOC_U16,
 26          RELOC_REL32,
 27          RELOC_PLT32,
 28          RELOC_PLTREL32,
 29          RELOC_PLT16_LO,
 30          RELOC_PLT16_HI,
 31          RELOC_PLT16_HA,

次のようにして見よう。:

case BFD_RELOC_32:                  r = R_PPC_ADDR32;               break;
つまり次のように変更
 Index: gnu/dist/binutils/gas/config/tc-ppc.c
 ===================================================================
 RCS file: /e/st4200/20040925/Repository/src/gnu/dist/binutils/gas/config/tc-ppc.c,v
 retrieving revision 1.1.1.1
 diff -u -r1.1.1.1 tc-ppc.c
 --- gnu/dist/binutils/gas/config/tc-ppc.c	28 Sep 2004 12:38:06 -0000	1.1.1.1
 +++ gnu/dist/binutils/gas/config/tc-ppc.c	16 Oct 2004 09:12:36 -0000
 @@ -5492,7 +5492,7 @@
        if ((operand->flags & PPC_OPERAND_RELATIVE) != 0
  	  && operand->bits == 26
  	  && operand->shift == 0)
 -	fixP->fx_r_type = BFD_RELOC_PPC_B26;
 +	fixP->fx_r_type = BFD_RELOC_32
        else if ((operand->flags & PPC_OPERAND_RELATIVE) != 0
  	  && operand->bits == 16
  	  && operand->shift == 0)
これで、使える libgcc_s.so.1.0 が出来た。

#2 [build.sh] gcc の版が違うと

/usr/include/signal.h:68: error: `pthread_t' was not declared in this scope
/usr/include/signal.h:68: error: parse error before `)' token
/usr/include/signal.h:68: error: initializer list being treated as compound 
ImageMagick
ttyp0:makoto@st4200  11:24:36/041016(...checkout/src)> c++ --version
c++ (GCC) 3.3.4
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ttyp0:makoto@st4200  11:24:41/041016(...checkout/src)> g++ --version
g++ (GCC) 3.3.3 (NetBSD nb3 20040520)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ttyp0:makoto@st4200  11:24:43/041016(...checkout/src)> which c++
/usr/local/bin/c++
ttyp0:makoto@st4200  11:24:53/041016(...checkout/src)> which g++
/usr/bin/g++

僕の用意した 2.0H では build.sh は走らない:

dependall ===> tools/groff
...
configure: error: a working C++ compiler is required

*** Failed target:  .configure_done

src/tools/groff/obj/build/config.log:

configure:2625: ./conftest
/usr/lib/libgcc_s.so.1: Unsupported relocation type 10 in non-PLT relocations

#3 [NetBSD] gcc に -fPIC を指定しても R_PPC_PLTREL24 に

 ttyp2:makoto@st4200  21:29:55/041016(...checkout/src)> objdump -r gnu/lib/libgcc3/libgcc_s/obj/_absvdi2.so
 
 gnu/lib/libgcc3/libgcc_s/obj/_absvdi2.so:     file format elf32-powerpc
 
 RELOCATION RECORDS FOR [.text]:
 OFFSET   TYPE              VALUE 
 00000034 R_PPC_PLTREL24    abort
良く見ると REL24 でなくて RLTREL24 になっている


2004年10月15日(金) 旧暦 [n年日記]

更新: "2004/10/15 22:46:51"

#1 [Web] 一年前の設定

index.shtml/software とかうるさく架空の URL で見にくる robot をよけるための 設定が、うまく動いていないようだが、最初の意図を忘れてしまって..
ttype:makoto@harry  9:48:17/041015(...htdocs/www)> ls -l index*
-rw-r--r--  1 makoto  operator  293 Jun  9  2002 index.html
lrwxrwxrwx  1 makoto  operator   11 Apr 21  2003 index.shtml.en@ -> index.shtml
lrwxrwxrwx  1 makoto  operator   11 Apr 21  2003 index.shtml.ja@ -> index.shtml

index.shtml:
total 8
-rw-r--r--  1 makoto  operator  598 Jun 26  2003 special.shtml
-rw-r--r--  1 makoto  operator  598 Aug 21  2002 special.shtml
ttype:makoto@harry 9:48:19/041015(...htdocs/www)>
293 Jun  9  2002 index.html                      index.shtml へ
 11 Apr 21  2003 index.shtml.en@ -> index.shtml
 11 Apr 21  2003 index.shtml.ja@ -> index.shtml

index.shtml:
total 8
598 Jun 26  2003 special.shtml
598 Aug 21  2002 special.shtml~ 
ttype:makoto@harry  9:48:19/041015(...htdocs/www)> 

DirectoryIndex で逃げてみる:


#2 [iPod] 代替電池が入手出来るらしい

Model No.:A1019 しかし、その中に書いてある●対応機種 に書いてあることと、僕のものに書いて あること(Model No.:A1019)とは、かなり名前の付け方が違う。 米国側 に行くと、型名はなく、写真で Click to see old iPod とあるので問題なさそう。$29 良く見ると日本製だなぁ。FUKUSHIMA ? UP325385 A4H これは Sony FUKUSHIMA と読むらしい。

#3 [NetBSD] X11 for macppc/2.0H

20040925 頃の src で make World したもの:

Fatal server error:
netbsdPciInit: can't open /dev/pci0


Please consult the The X.Org Foundation support 
         at http://wiki.X.Org

2.0H に古い X11R6-2003 を入れた時:

(II) XINPUT: Adding extended input device "Mouse1" (type: MOUSE)
1f, 8e, 0
ppll_div_3 == 0.  skipping.

Fatal server error:
Caught signal 11.  Server aborting

6/13/2003 に書いた:

config/cf/Imake.rules:1593: unterminated argument list invoking macro "Concat"
./config/imake/imake: Exit code 1.
は、次の変更をすれば通過するということが分った。
--- config/cf/Imake.rules-orig  2004-10-15 16:33:38.000000000 +0900
+++ config/cf/Imake.rules       2004-10-15 16:54:26.000000000 +0900
@@ -1584,7 +1584,7 @@
                sed -e 's:^.::' -e 's:[^/.][^/]*:..:'g`; \              @@\
          cd Concat($(DESTDIR),opath); \                                @@\
          if [ -f lfile -a ! -h lfile ]; then \                         @@\
-           cp -p lfile Concat($(DESTDIR),npath/cfile; \                @@\
+           cp -p lfile Concat($(DESTDIR),npath/cfile); \               @@\
          fi; \                                                         @@\
          $(RM) -r lfile; \                                             @@\
          $(LN) Concat($${RELPATH},npath/cfile) lfile; \                @@\
Xaw3d を作るには、更に次のことが必要だった。
ttyp7:makoto@harry  17:12:25/041015(...x11/Xaw3d)>  \
mkdir  work/xc/lib/Xaw3d/lib
これは正しくなさそう。make install で次のようになる
ln: /usr/X11R6//lib/lib/Xaw3d.so.7: No such file or directory
*** Error code 1

#4 [NetBSD] Unsupporte relocation type 10 in non-PLT relocations

次の中に reloc_type が定義してある。
/usr/include/powerpc/reloc.h
enum reloc_type {
        RELOC_NONE,
        RELOC_32,
src/libexec/ld.elf_so/arch/powerpc/ppc_reloc.c
の中に次のような部分がある
177 _rtld_relocate_nonplt_objects(obj)
178         const Obj_Entry *obj;
179 {
180         const Elf_Rela *rela;
181         
182         for (rela = obj->rela; rela < obj->relalim; rela++) {

192                 switch (ELF_R_TYPE(rela->r_info)) {
193                 case R_TYPE(NONE):
194                         break;
195 
196                 case R_TYPE(32):        /* word32 S + A */
197                 case R_TYPE(GLOB_DAT):  /* word32 S + A */
ここで R_TYPE(32)は RELOC_32 と同じ意味。
/usr/include/powerpc/reloc.h の中の、
  RELOC_REL24,    /* RELOC_BRANCH = 10 */
これが怪しい気もする ? でも、objdump -R libgcc_s.so.1.0 すると、 そのような字は出て来ない。
 ttyp3:makoto@st4200  21:29:00/041015(/usr/lib)> \
objdump -R -r libgcc_s.so* | tail -374 | awk '{print $2}' | sort -u 
 
 RELOCATION
 R_PPC_ADDR32
 R_PPC_JMP_SLOT
 R_PPC_REL24
 R_PPC_RELATIVE
 TYPE
 file
 ttyp3:makoto@st4200  21:29:11/041015(/usr/lib)> 
出て来ている。
ttyp3:makoto@st4200 21:29:11/041015(/usr/lib)> objdump -R -r libgcc_s.so* | grep -i REL24
00001678 R_PPC_REL24 abort
ttyp3:makoto@st4200 21:30:17/041015(/usr/lib)>
これはいいのかなぁ。U だけれど。
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
        -Wl,--soname=$(SHLIB_SONAME) \
        -Wl,--version-script=$(SHLIB_MAP) \
        -o $(SHLIB_NAME) @multilib_flags@ $(SHLIB_OBJS) $(SHLIB_LC) && \
        rm -f $(SHLIB_SOLINK) && \
        $(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK)
この中の @multlib_flags@ ?


2004年10月13日(水) 旧暦 [n年日記]

更新: "2004/10/13 23:10:02"

#1 [無題] 目覚し

いま使っている目覚しは、1,000 円くらいで買った 電波時計のもの。24 時間制で設定出来るので、毎日同じ時刻に 起きるなら、設定したままで放っておけていい。
実はきのう目覚しがなったのに気が付かなかったと思った。 かなり疲れていたのに、遅く寝たから、そんなものかなと思った。
ところが今朝も同じ。寝過してしまった。 変だなと思って見たら、何と午後 5 時 30 分 に設定してある。24 時制の目覚しは、そういう問題もあった。 問題というか、注意しなければいけないこと、と言った方がいい。
という訳できょうは 6:15 頃目をさまして、成田に行く。 下の道で 70 分くらいかかって 7:40。迎えるべき便は定刻 7:35 に既に着いて いたが、まあ多分時間がかかるだろうということで。8:08 頃荷物待との 電話あり。ただしそれから 30 分近くかかって出て来た。


2004年10月12日(火) 旧暦 [n年日記]

更新: "2004/10/12 23:24:54"

#1 [] 5:15 に起きて、6:53 に家を出るはずが

目がさめて気が付いたら 7:03 くらいだった。
本千葉 7:22 の電車に乗って、
千葉発 7:35 
東京   8:21 
川崎   8:40 くらい。何とか間合った。

#2 [CVS][WordPress] 枝を考えて見た。

WordPress + ME + Postgress を import する時の枝はこのようなものかな
   1.1      1.2
 ---+--------+------- wp-ME-pg
     \        \ 
      \  1.2.3 +----- wp-ME
       \    
 1.1.3  +---------- wp-pg
         \
   1.1.5  +-------- wp-mingus
また -ko を付けるかどうか悩むのかな。
  • 自分専用: -ko を付けない
  • patch の形で公開するつもりなら : -ko を付ける
確かこうするはずだと思う。


2004年10月10日() 旧暦 [n年日記]

更新: "2004/10/10 08:08:17"

#1 [Web] Content-Encoding: (with

Apache is sending strange header, 'Content-Encoding: (with' if the data being sent has escape characters.
HTTP/1.1 200 OK
Date: Sat, 09 Oct 2004 22:07:01 GMT
Server: Apache/2.0.52 (Unix) mod_ssl/2.0.52 OpenSSL/0.9.7d DAV/2 PHP/4.3.9
Content-Encoding: (with 
Content-Language: ja
Last-Modified: Sat, 09 Oct 2004 21:22:26 GMT
Content-Length: 11027
Content-Type: text/html; charset=ISO-2022-JP
The source code on this particular line is of httpd-2.0.52/modules/metadata/mod_mime_magic.c:
2013         for (p = names; p < names + NNAMES; p++) {
2014             if (STREQ(p->name, token)) { 
2015                 magic_rsl_puts(r, types[p->type]);
2016                 if (has_escapes)
2017                     magic_rsl_puts(r, " (with escape sequences)");
2018                 return 1; 
2019             }
2020         }
I have changed the word 'with' to another one, and httpd outputs the changed word. So definitely the location is correct. Interim fix not to send unbalanced parenthesis:
ttyp0:makoto@st4200  7:47:46/041010(...work/httpd-2.0.52)> 
diff -u  ./modules/metadata/mod_mime_magic.c{~,}
--- ./modules/metadata/mod_mime_magic.c~        2004-02-10 05:53:19.000000000 +0900
+++ ./modules/metadata/mod_mime_magic.c 2004-10-10 07:41:20.000000000 +0900
@@ -2014,7 +2014,7 @@
            if (STREQ(p->name, token)) {
                magic_rsl_puts(r, types[p->type]);
                if (has_escapes)
-                   magic_rsl_puts(r, " (with escape sequences)");
+                 {} /* magic_rsl_puts(r, " (with escape sequences)"); */
                return 1;
            }
        }
The same thing is done 5 years ago ? Page in Japanese The other guy read that page...


2004年10月09日() 旧暦 [n年日記]

更新: "2004/10/09 10:29:12"

#1 [pkgsrc] mail/php4-imap

mail/php4-imap/work/php-4.3.9/ext/imap/config.log a
|                    Syntax error
configure:3510: /lib/cpp -I conftest.c
eval: /lib/cpp: not found
configure:3516: $? = 127
configure: failed program was:
| /* confdefs.h.  */
work/php-4.3.9/ext/imap/configure:
for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
php4-imap は imap-uw だけなのかな。cyrus-imapd は ?


2004年10月08日(金) 旧暦 [n年日記]

更新: "2004/10/08 23:38:09"

#1 [Namazu]

ja.po を変更したのに、それが反映されていないのは何故 ?
手動で反映
update-gmo: Makefile $(GMOFILES)
ttyp0:makoto@umax 21:03:56/041008(...namazu-2.0.13/po)> make update-gmo
cd .. && CONFIG_FILES=po/Makefile.in CONFIG_HEADERS= /bin/sh ./config.status
config.status: creating po/Makefile.in
config.status: executing depfiles commands
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing default commands
rm -f ja.gmo && /usr/bin/msgfmt -c --statistics -o ja.gmo ja.po
151 translated messages, 1 untranslated messages.
rm -f ja_JP.SJIS.gmo && /usr/bin/msgfmt -c --statistics -o ja_JP.SJIS.gmo ja_JP.SJIS.po
ja_JP.SJIS.po:180: illegal control sequence
ja_JP.SJIS.po:270: illegal control sequence
....
found 9 fatal errors
*** Error code 1

Stop.
make: stopped in /export/pkgsrc/personal-pkgsrc/namazu-mef/work/namazu-2.0.13/po
ttyp0:makoto@umax 21:04:03/041008(...namazu-2.0.13/po)> ack -c ja_JP.SJIS.po
filename code kanji kana kanji7 kana7 err ascii ctrl other
ja_JP.SJIS.po sjis 2050 0 0 0 0 18841 906 0
ttyp0:makoto@umax 21:04:45/041008(...namazu-2.0.13/po)> sudo cp ja.gmo /usr/pkg/share/locale/ja/LC_MESSAGES/namazu.mo

#2 [機械] 12:30-21:30 まで /~makoto が見えなかった

50% の確率で見えたり、見えなかったりしたと思う。
機械を入替えて、NetBSD/macppc 2.0H にして、apache 2.0.52 にした のだけれど、home directory を一時的に変更したのを戻さず、その ままにしていたため。 50% の確率というのは round-robin の片側だけそうなっていたから。
370 回くらいそのようなことがあったようで、申訳けありません。

#3 [Web] WordPress を始めて見ました



2004年10月03日() 旧暦 [n年日記]

更新: "2004/10/05 21:19:11"

#1 [Namazu][Web] Apache 2.0.52 で設定しているが、

namazu の文字化け:

文字が化ける。同じものを以前の設定のサーバで見ると 化けない (データは共有でサーバだけ違う場合)。 namazu の文字化け 次の三行(だけ)が化けている。
検索結果、
参考一致数:
検索式に一致する文書はありませんでした。
化ける方: gettext 0.10.35 NetBSD-2.0H
httpd.conf:
AddDefaultCharset ISO-2022-JP

make check はまだだった:

./mknmz-8: ../scripts/gtnmz: permission denied
./mknmz-8: ../scripts/gtnmz: permission denied
FAIL: mknmz-8
PASS: mknmz-9
..
PASS: mknmz-18
/usr/lib/libgcc_s.so.1: Unsupported relocation type 10 in non-PLT relocations

PASS: gcnmz-1
FAIL: namazu-1
FAIL: namazu-2
FAIL: namazu-3
FAIL: namazu-5
FAIL: namazu-8
FAIL: namazu-cgi-1
FAIL: namazu-cgi-2
...
====================
8 of 47 tests failed
====================
*** Error code 1
ttyp3:makoto@umax  16:47:51/041003(...namazu-2.0.13/tests)> 
確かに通っていないが、実は、他に
20040128 + 2.0G  make check OK
(両方)     2.0G
(両方)     2.0H  make check 8/47
のどれでも (apache 2.051/52) 同じように化ける。 見かけ上、
1.6 + apache 2.047    正常
2.0 + apache 2.051/2  文字化け
となっている。 2.0H の機械で:
ttyp3:makoto@umax  17:07:27/041003(~/public_html/diary)> \
 env QUERY_STRING=jjjj SCRIPT_NAME=namazu.cgi ./namazu.cgi > /tmp/ss
ttyp3:makoto@umax  17:07:46/041003(~/public_html/diary)> ack -c /tmp/ss
filename        code   kanji   kana kanji7  kana7    err  ascii   ctrl  other
/tmp/ss         euc     1123      0      0      0      0   3994    260      0
ttyp3:makoto@umax  17:07:49/041003(~/public_html/diary)> 
どうも apache が余分に変換しているような気がしている。 php モジュールを使う時にも、mb_string の設定をすると、変になるが、 設定を外すると問題がない。という気がしている。

SetHandler type-map:

<Files *.html>
    SetHandler type-map
</Files>
きのう書いたこの部分は、/usr/pkg/share/httpd/htdocs/ を見ると分る。 例えば index.html.var に内容交渉の設定を次のように書いておける
URI: index.html.ja.iso2022-jp
Content-language: ja
Content-type: text/html;charset=ISO-2022-JP

1.6ZI + 2.0.52:

/usr/pkgsrc/www/apache2 では make 出来なかったので、/usr/local/apache2 に入れる。
Results:

References: [ jjjj: 0 ]

No document matching your query.

namazu だけで再現:

2.0H の機械で、次のようにすると結果が化けている
env LANG=ja QUERY_STRING='query=jjjj' SCRIPT_NAME=namazu.cgi ./namazu.cgi > ! ~/namazu/umax.html
次のようにすると化けない。
env LANG=ja_JP.eucJP QUERY_STRING='query=jjjj' SCRIPT_NAME=namazu.cgi ./namazu.cgi > ! ~/namazu/umax.html
ということで、 .namazurc の設定を
Lang ja
Lang ja_JP.eucJP
と変更したら、 解決 した。

という訳で、もう一度 round-robin に設定

この理由は、NetBSD-2.0H などの最近の NetBSD では

ttyp1:makoto@st4200 0:17:01/041004(...work/smtpfeed-1.18)> ls -ld /usr/share/locale/j*
drwxr-xr-x 3 root wheel 512 Sep 29 06:29 /usr/share/locale/ja/
drwxr-xr-x 2 root wheel 512 Sep 29 09:39 /usr/share/locale/ja_JP.ISO2022-JP/
drwxr-xr-x 2 root wheel 512 Sep 29 09:39 /usr/share/locale/ja_JP.ISO2022-JP2/
drwxr-xr-x 2 root wheel 512 Sep 29 09:39 /usr/share/locale/ja_JP.SJIS/
drwxr-xr-x 2 root wheel 512 Sep 29 09:39 /usr/share/locale/ja_JP.ct/
drwxr-xr-x 2 root wheel 512 Sep 29 09:39 /usr/share/locale/ja_JP.eucJP/
のように locale を ja の文字だけでは特定出来ない、というか ja の二文字で指定する 場合の意味が変って来ているため。
namazu の場合、ja_JP.eucJP に作るようになっている ので、その下に出来ている(?)。

raeva さんより:

解説ありがとうございます。
ttyp1:makoto@umax 18:23:38/041005(~)> locale -a |grep ja
ja
ja_JP.ISO2022-JP
ja_JP.ISO2022-JP2
ja_JP.SJIS
ja_JP.ct
ja_JP.eucJP
となっています。(NetBSD 2.0H)

Unsupported relocation type 10 in non-PLT relocations:

ttyp1:makoto@st4200 0:16:32/041004(...work/smtpfeed-1.18)> ktrace -t n groff -mandoc smtpfeed.8 > ! /tmp/ssss
/usr/lib/libgcc_s.so.1: Unsupported relocation type 10 in non-PLT relocations
ttyp1:makoto@st4200 0:16:59/041004(...work/smtpfeed-1.18)> kdump ktrace.out
13767 ktrace NAMI "/home/makoto/bin/groff"
13767 ktrace NAMI "/usr/pkg/bin/groff"
13767 ktrace NAMI "/usr/pkg/sbin/groff"
13767 ktrace NAMI "/usr/local/bin/groff"
13767 ktrace NAMI "/usr/bin/groff"
13767 ktrace NAMI "/usr/libexec/ld.elf_so"
13767 groff NAMI "/etc/ld.so.conf"
13767 groff NAMI "/usr/lib/libstdc++.so.5"
13767 groff NAMI "/usr/lib/libm.so.0"
13767 groff NAMI "/usr/lib/libgcc_s.so.1"
13767 groff NAMI "/usr/lib/libc.so.12"
ttyp1:makoto@st4200 0:17:01/041004(...work/smtpfeed-1.18)>


2004年10月02日() 旧暦 [n年日記]

更新: "2004/10/03 08:35:52"

#1 [NetBSD][2.0G] Unsupported relocation type 10 in non-PLT relocations

この辺になにか鍵(clue)がありそう。
ttyp2:root@st4200  8:56:33/041002(...checkout/src)# find . -name groff -size +100 -ls
(cut)  223608 Oct  1 21:31 ./gnu/dist/groff/src/roff/groff/groff
...     71682 Sep 30 01:35 ./gnu/usr.bin/groff/src/roff/groff/obj/groff
       104444 Sep 30 00:04 ./tools/groff/obj/build/src/roff/groff/groff
       104444 Sep 30 00:06 ./tooldir.NetBSD-2.0G-powerpc/lib/groff/groff
        71682 Sep 30 03:14 ./destdir.macppc/usr/bin/groff
ttyp2:root@st4200  8:56:41/041002(...checkout/src)# ./tools/groff/obj/build/src/roff/groff/groff
ttyp2:root@st4200  8:56:46/041002(...checkout/src)# ./gnu/dist/groff/src/roff/groff/groff
/usr/lib/libgcc_s.so.1: Unsupported relocation type 10 in non-PLT relocations

ttyp2:root@st4200  8:56:49/041002(...checkout/src)# 
toolchain の中の groff は動くのに、後から作った groff は問題がある ? (写せば ...)
ttyp2:root@st4200  8:56:49/041002(...checkout/src)# ldd ./gnu/dist/groff/src/roff/groff/groff
./gnu/dist/groff/src/roff/groff/groff:
        -lstdc++.5 => /usr/lib/libstdc++.so.5
        -lm.0 => /usr/lib/libm.so.0
        -lgcc_s.1 => /usr/lib/libgcc_s.so.1
        -lc.12 => /usr/lib/libc.so.12
ttyp2:root@st4200  DING!/041002(...checkout/src)# ldd ./tooldir.NetBSD-2.0G-powerpc/lib/groff/groff
./tooldir.NetBSD-2.0G-powerpc/lib/groff/groff:
        -lstdc++.5 => /usr/lib/libstdc++.so.5
        -lm.0 => /usr/lib/libm.so.0
        -lc.12 => /usr/lib/libc.so.12
ttyp2:root@st4200  9:00:28/041002(...checkout/src)# 
単に見ているか、見ていないかの違いか(外部を見ている方が大きいとは不思議)。

#2 [pkgsrc] www/apache2

今は 2.0.52 になっているから、pkgsrc を新しくして見ようとしたら、 実は 2.0.51nb1 は、2.0.52 と同等だった。知っている人だけ知っている ?

#3 [機械] ipnat, rdr, round-robin

IPFilter の NAT この round-robin を試して見る。
<Files *.html>
    SetHandler type-map
</Files>
これってどういう意味かな ?


2004年10月01日(金) 旧暦 [n年日記]

更新: "2004/10/02 00:23:04"

#1 [NetBSD]

userland 20040128
kernel   20040822 2.0G
な機械で:
db> trace
at panic+1b4
at remrunqueue+8c
at schedcpu+220
at softclock+238
at do_pending_int+128
at ext_intr+188
at setfault+80c
at ADBDevTable+3ec88c
at lcsplx+c
at cpu_switchto+40
at mi_switch+158
at sa_switch+178
at ltsleep+3fc
at biowait+54
at uvm_swap_io+200
at uvm_swap_get+4c
at uvmfault_anonget+3c8
at uvm_fault+4a0
at trap+398
at setfault+5a0
db> 

#2 [pkgsrc] devel/darts/ を作るところで

checking size of char... configure: error: cannot compute sizeof (char), 77
See `config.log' for more details.
*** Error code 1
config.log を見ると
configure:3477: ./conftest
/usr/lib/libgcc_s.so.1: Unsupported relocation type 10 in non-PLT relocations
こんな字が出ている。 とりあえず、libgcc_s* を作り直して見る
153  10:21   cd ./lib/libgcc3/libgcc_s
158  10:21   sudo rm obj/libgcc*
167  10:23   sudo env TOOLDIR=/export/20040925-1/checkout/src/tooldir.NetBSD-2.0G-powerpc make
これで *.so から libgcc* を作ってくれる。が、もう一つ前に行く必要あり ?
177  10:31   sudo rm obj/*.so
178  10:31   sudo make
179  10:31   sudo env TOOLDIR=/export/20040925-1/checkout/src/tooldir.NetBSD-2.0G-powerpc make
これで全ての obj/*.so を作り直す。例えば
# compile libgcc_s/unwind-dw2.so
/export/20040925-1/checkout/src/tooldir.NetBSD-2.0G-powerpc/bin/powerpc--netbsd-gcc -O2 -fno-strict-aliasing -Werror -I/export/20040925-1/checkout/src/gnu/lib/libgcc3/libgcc_s -I/export/20040925-1/checkout/src/gnu/usr.bin/gcc3/arch/powerpc -DIN_GCC -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I/export/20040925-1/checkout/src/gnu/dist/gcc/gcc -I/export/20040925-1/checkout/src/gnu/dist/gcc/gcc/. -I/export/20040925-1/checkout/src/gnu/dist/gcc/gcc/config -I/export/20040925-1/checkout/src/gnu/dist/gcc/gcc/../include -I/export/20040925-1/checkout/src/gnu/dist/gcc/gcc/config/rs6000 -I/export/20040925-1/checkout/src/gnu/dist/gcc/gcc/cp -I/export/20040925-1/checkout/src/gnu/lib/libstdc++-v3/arch/powerpc -I. -nostdinc -isystem /usr/include -c -fPIC -DPIC -fexceptions -o unwind-dw2.so /export/20040925-1/checkout/src/gnu/dist/gcc/gcc/unwind-dw2.c
*.c から いきなり *.so が作れる ?
作られているものと、入っているものに差がある ?
ttyp1:makoto@st4200  10:43:28/041001(...libgcc3/libgcc_s)> ls -l /usr/lib/libgcc_s* 
lrwxr-xr-x  1 root  wheel     15 Sep 29 20:22 /usr/lib/libgcc_s.so@ -> libgcc_s.so.1.0
lrwxr-xr-x  1 root  wheel     15 Sep 29 20:22 /usr/lib/libgcc_s.so.1@ -> libgcc_s.so.1.0
-r--r--r--  1 root  wheel  42988 Sep 29 20:08 /usr/lib/libgcc_s.so.1.0
ttyp1:makoto@st4200  10:43:55/041001(...libgcc3/libgcc_s)> ls -l obj/libgcc_s*
lrwxr-xr-x  1 root  wheel     15 Oct  1 10:31 obj/libgcc_s.so@ -> libgcc_s.so.1.0
lrwxr-xr-x  1 root  wheel     15 Oct  1 10:31 obj/libgcc_s.so.1@ -> libgcc_s.so.1.0
-rwxr-xr-x  1 root  wheel  42988 Oct  1 10:31 obj/libgcc_s.so.1.0*
-rw-r--r--  1 root  wheel  79194 Oct  1 10:31 obj/libgcc_s_pic.a
_pic.a って、.so を作る時に必要なだけか。

libgcc_s.so.1.0 を作るところ:

やはりこちらが問題か
# build libgcc_s/libgcc_s.so.1.0
rm -f libgcc_s.so.1.0
/export/20040925-1/checkout/src/tooldir.NetBSD-2.0G-powerpc/bin/powerpc--netbsd-gcc -Wl,-nostdlib -B/usr/lib/ -B/usr/lib/ -Wl,-rpath-link,/lib:/usr/lib -L/lib -Wl,-x
-shared
-Wl,-soname,libgcc_s.so.1 -nodefaultlibs
-Wl,--version-script=/export/20040925-1/checkout/src/gnu/lib/libgcc3/libgcc_s/obj/libgcc.map -o libgcc_s.so.1.0
-Wl,--whole-archive libgcc_s_pic.a -Wl,--no-whole-archive -L/usr/lib
ln -sf libgcc_s.so.1.0 libgcc_s.so.1.tmp
mv -f libgcc_s.so.1.tmp libgcc_s.so.1
ln -sf libgcc_s.so.1.0 libgcc_s.so.tmp
mv -f libgcc_s.so.tmp libgcc_s.so
9/26 日の覚え と比べると .. あるいは src/gnu/dist/gcc/gcc/config/t-slibgcc-sld と比べても微妙に違う ?
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
        -Wl,-h,$(SHLIB_SONAME) -Wl,-z,text -Wl,-z,defs \
        -Wl,-M,$(SHLIB_MAP) -o $(SHLIB_NAME) \
        @multilib_flags@ $(SHLIB_OBJS) -lc && \
        rm -f $(SHLIB_SOLINK) && \
        $(LN_S) $(SHLIB_NAME) $(SHLIB_SOLINK)
src/gnu/lib/libgcc3/arch/powerpc.mk に注目 ?

入っている gcc が使えないなら:

  • /usr/local/bin に gcc-3.3.4 を入れる
  • /etc/mk.conf に CC=/usr/local/bin/gcc としておく
  • そのままだと、何故か gcc-2.8.0 以上が必要と言って pkgsrc から入れようとするので /etc/mk.conf に
    USE_NATIVE_GCC=YES
    
    と書いておく。これで問題は避けて通ることが出来る。

mail/smtpfeed:

まだおこっている
===> Building for smtpfeed-1.18
gcc -DINET6 -O2  -c address.c
In file included from common.h:70,
                 from address.c:41:
/usr/include/signal.h:68: error: parse error before "int"
In file included from address.c:42:
extern.h:75: warning: conflicting types for built-in function `log'
*** Error code 1
gcc は以前に作ったものなので、作り直し。 と思ったら、同じことを言われて作れない。
65 #if (_POSIX_C_SOURCE - 0L) >= 199506L || (_XOPEN_SOURCE - 0) >= 500 || \
66     defined(_NETBSD_SOURCE)
67 int     pthread_sigmask __P((int, const sigset_t *, sigset_t *));
68 int     pthread_kill __P((pthread_t, int));
69 #endif

#3 [URL] FPGA で PC8001 を作る

中山さん のところから。本当にすごい。

#4 Wanderlust BTS

これも中山さんのところから。
  • kill-buffer がときどきおかしくなる (しっぽは全くつかんでいません)。
  • M-w が kill-ring-save でなく他の機能に割当てられている
なんて bug と言えるのかな。

#5 [Unix] パスを通すってどういうことでしょうか

最近、パスを通すってどういうことでしょうか で検索したら、この日記しか見つからなかったのに、 そこから接続している先が 404 になってしまっていた。 そこで web.archive につないでおくことにする。
  • パス(PATH)というのは経路です。道です。途(みち)です。
  • 何の道かというと、Unix のファイルにたどりつける道です。
これが大前提。
  • 次に何か操作(作業)をしたいとします。
  • 例えば list directory で ls を知ってい たとします。ls は /bin/ls にあることを知っていたとします。 その時には、
    % /bin/ls
    と入力すると目的が達せます。
  • 次に ssh したいとします。これは /usr/bin/ssh にあることを知っていたとします。 すると、
    % /usr/bin/ssh hostname
    とすると ssh を起動するという目的は達せられます。
そんなのやってられないよね。 一つ一つ覚えておくなんて。 で、 ls とか ssh とか入力したら、適当に探して欲しい。 探すところを設定しておこう。 例えば、
/bin と /usr/bin の中で探してよ
とか設定したい。 という時には次のようにすればいい。
% set path = ( /bin /usr/bin )
$ export PATH=/bin:/usr/bin
でもこの通りに入力すると、 その次に使えるものが減ってしまうかも知れないので、新たに窓を作って試すこと。 いま設定されているものを見るには、次のようにします。 csh/tcsh の時
% echo $path
sh/bash の時
# echo $PATH
つまり path や PATH という名前のシェル変数に、探す先のディレクトリ を設定しておけばいい。その中に、/usr/local/bin があると、 「/usr/local/bin にパスが通っている」 という言い方をする。

つまり、最初に書いたパスの意味とは少し違って、 「操作の名前を探すみち」= 「コマンドを探すディレクトリ一覧」 に、自分の必要なものが入れるという 意味で 「パスを通す」と言うのです。




最近の日記
2024年03月10日
停電 (瞬電)
2024年03月03日
the second try on bare-metal
useradd
2024年02月29日
opendkim and senmail
2024年01月24日
chat/iam 0.0.8
2024年01月21日
uselocale vs setlocale (textproc/R-readxl)
以上、22 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)