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

[fol] Re: vfprintf.c no such file or directory


佐々木@でかいの です。

fprintf()の頭に間違えてvという冗字が入っているだけというオチ?

> Vine Linux 2.1.5 で以下のようなプログラムをコンパイル
> 実行したところ、Segmentation fault が発生しました。
> 
> #include        <stdio.h>
> int main()
> {
>         char    buff[1024];
> 
>         strcpy(buff, "abcdefg\n");
> 
>         vfprintf(stdout, "Result is %s\n", buff);
> 
>         return(0);
> }

何がしたいのかわかりませんが、vfprintf()の3番目の引数の型はva_list
ですから char*型の buffを渡している時点で変です。
#include <stdarg.h>があればコンパイル時にエラーとなるはずです。
#include <stdarg.h>がなくともプロトタイプ宣言がないという警告が
出るはずです。無視しましたか?

> gdb に寄りますと、
> 
> 1259    vfprintf.c: そのようなファイルやディレクトリはありません.
>         in vfprintf.c
> 
> との事ですが、これは何かライブラリをリンクする必要があるので
> しょうか。

ソースファイル vfprintf.cがみつからないといっています。
linux環境ならならglibcのソースを展開して、gdbの-dオプションで
vfprintf.cがあるディレクトリを指定する必要があるでしょう。

     でかいの企画  佐々木茂彦
	ssasaki _at_ dekaino.net

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: