[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:03230] how to debag in libc



根岸@NTTです。

現在、libc6 用の tgif を作成しているのですが libc6 の中で 
"Segmentation error" を起こしてしまいます。

そこで、libc の中を gdb で追い掛けたいのですが、どのような option を 
gcc に与えれば宜しいのでしょうか?

libc6 は以下のものが入っています。

+++-===============-==============-============================================
ii  libc6           2.0.7pre1-4.wc The GNU C library version 2 (run-time files)
ii  libc6-dbg       2.0.7pre1-4.wc The GNU C library version 2 (debugging/profi
ii  libc6-dev       2.0.7pre1-4.wc The GNU C library version 2 (development fil
ii  libc6-doc       2.0.7pre1-4.wc The GNU C library version 2 (documentation f
ii  libc6-pic       2.0.7pre1-4.wc The GNU C library version 2 (PIC library)

libc6 の source を持ってきて debug 用の library を作るしかないのでしょうか?

因に、どこで segmentation error を起すかというと strtok の関数です。

単純な例としては、

#include <stdio.h>
#include <string.h>

void main (int argc, char **argv) {
	char *s;
	s = strtok("14", " ,\t\n\r");
	printf ("%s\n",s);
}

を実行すると、14 が表示されなければいけないのですが、Debian (hamm) だ
と Segmentatin error をおこします。 (Solaris,FreeBSD では予想どうりに 
14 が表示されます)

以上

---