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

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



潮田です。

>  HP-UX は test drive 環境で何とかなりそうです。SIGTTOU の件
> も試しておいて下さい。こちらで試した限りでは SIGTTOU も 2GB
> の壁も大丈夫な様子です。
1. [FDclone-users:00201] の patch をあてる。
2. [FDclone-users:00198] の
> #define EXTENDCCOPT	"-D_FILE_OFFSET_BITS=64"
を適用。
3. [FDclone-users:00202] の
>  machine.h の EXTENDCCOPT に +DD64 を追加。
>  リンク時に怒られたので、Makefile.tmp の LDFLAGS にも
>  +DD64 を追加。
を実行。
の状態で fd を作成しました。
(2G over のファイルがないので、 ascnumeric() の引数は
直していません。)

普通に動きました。
TERM も dtterm に戻しても大丈夫でした。
(vt100 では PageUp, PageDown キーが使用できないので)

>  Solaris は for Intel 環境しかないのでお願いします。先日、
> 大枚はたいて Solaris 9 を買ったのですが、まだ install してい
> ないので依然 Solaris 8 で検証しています。
> 
> # 個人用なのに license 込みで買わされた...。
う、もしかして環境はすべて自前ですか。

職場の Solaris (SunOS 5.7 なので 7 ですね)で試しました。
# 8 for Intel も上司が自腹で購入したのですが、
# 純正の WS を購入したのでお蔵入りに。
# (って結局封もきってないな)

1. [FDclone-users:00198] の
> #define EXTENDCCOPT	"-O -D_FILE_OFFSET_BITS=64"
を適用。
2. [FDclone-users:00202] の
>  Makefile.tmp の CFLAGS と LDFLAGS に -xarch=v9 を追加。
を実行。
3. parse.c の ascnumeric() の引数 long を off_t に。
(そのプロトタイプも同様に修正)
4. sys_errlist の参照をコメントにし、 sys_errlist の使用個所は
strerror() を使用するほうに変更。

の状態で fd を作成しました。
問題なさそうです。


>  何箇所かありますが、全て「#if MSDOS」-> 「#if 1」への置換
> えで十分なので、5 分とかからないと思いますよ。
すいません、頭が眠っていたようです。
MSDOS を定義するわけにはいかないしとか考えてました。



このテスト中に気がついた点が2つあります。
(今回のことには関係がありません)
1. system.c の 2959 行目

#   ifndef      !FD

と言う部分がワーニングになります。
(確かにちょっと)

2. FD の一覧表示の領域と、最下段とでファイルサイズの
表示可能桁数が違っている。
一覧は 9 桁で、最下段は 8 桁となっているように見える。
そういう仕様かもしれませんが、違和感があります。
3G と間違えて、 300M のファイルを作ってしまい気が付きました。
# オリジナル由来の現象かと思って、何年かぶりで FD 3.13 を
# 起動してしみました。
# そうか Info って上にあったんだっけ。