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

[FDclone-users:00194] Re: 巨大ファイルの扱い



潮田です@現実逃避中

私が書きました、
> 手元にあるそんな環境だと Vine Linux 2.6r1 が見つかったので
> 試してみました。
> 2G 超のファイルがファイラーの画面に出てこないですね。
> USELLSEEK は linux では定義済みだけれど、それだけでは足りない
> のでしょう。
> __USE_FILE_OFFSET64 やら __USE_LARGEFILE64 やら怪しいマクロが
> 互いに影響するようですね。

> で、 Vine(Linux) はあきらめて、 Solaris で試しました。

小松さんが本当に必要としているのは、 Linux(x86) 32bit 環境での
情報と思われますし、なんか悔しいのでもう少し調べてみました。
(って google で検索しただけですが)
[FDclone-users:00142] に書かれた当時と環境が変わっていなければ
偶然にも手元の環境が同じ os (version) なので、これでいけると
思います。
# ファイルシステムは ext3 です。

方法)
http://www.ece.utexas.edu/~luo/linux_lfs.html

にあるように

-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64

をつける。
> $ Makefile.tmp の CFLAGS に -D_LARGE_FILES を追加
と同様に変更すれば OK です。

また、
> >> parse.c の ascnumeric() で第2引数 n の型を
> >> long -> long long
> >> へ変更。
や
> AIX とは異なり、プロトタイプを正しくする必要があるようです。
> $ grep ascnumeric *.[ch] | grep extern
> でひっかかるものをすべて同様に変更。
> で、終わりでした。
> 
も必要です。(gcc ですから)

ファイラーの画面にファイルサイズ 999999999 で表示される
ところまで(ところだけ)は確認しました。

machine.h の USELLSEEK はあっても無くても、ここまでは
かわりません。

# linux の詳しい方、後お願いします。
# filesystem が何々でないととか kernel がいくつ以降とか。
# あげている URL も読んだわけではないので・・・