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月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年05月08日
comparison on ./buildsh tools
2024年05月06日
py-setuptools (python 3.11.9)
make release took 1 hours and 10 min
qemu invocation for 10.99.10
2024年05月05日
Windows 10 version
serial connection
bc bench
2024年05月04日
Trial on 10.99.10
another version (later trial) to succeed
2024年04月29日
dkim
以上、1 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)