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 を入れておこう。



最近の日記
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)
以上、9 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)