[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FDclone-users:00664] Re: Linux 2.6.18 で dosdisk.c コンパイルエラー (_syscall5 マクロ)
- Subject: [FDclone-users:00664] Re: Linux 2.6.18 で dosdisk.c コンパイルエラー (_syscall5 マクロ)
- From: <hma@syd.odn.ne.jp>
- Date: Sat, 9 Dec 2006 07:36:56 GMT
濱崎です。
_FILE_OFFSET_BITS=64 なら、USELLSEEK を無効にしてもいいんでしょうか?
もしそうなら、machine.h の中で判定して無効にすれば
件の箇所は、コンパイル対象から外れます。
私は
--- FD-2.09a/machine.h 2006-10-31 00:00:00.000000000 +0900
+++ fdclone-2.09a/machine.h 2006-12-08 14:43:51.000000000 +0900
@@ -545,6 +545,9 @@
&& (!defined (PPC) || !defined (__GNUC__) || __GNUC__ >= 3) /* for bug */
# define USELLSEEK
# endif
+#if defined (USELLSEEK) && (_FILE_OFFSET_BITS == 64)
+# undef USELLSEEK
+#endif
#define SIGFNCINT
#endif
のようにしてみました。
対処として合っていますか?
<20061207131629.4B9B540C03E@yuka.unixusers.net>の記事において
shirai@unixusers.netさんは書きました。
>> そもそも llseek(2) を使っているのは古い Linux 用なんですよ。
>> 新しめの Linux なら -D_FILE_OFFSET_BITS=64 が効くから普通の
>> lseek(2) で十分だし。
>> その肝腎の古い Linux で使えなくなるようだと本末転倒なので、
>> 新旧どの Linux も救済される仕組みを選ばなくてはなりません。
--------------------------------------------------
濱崎 健 E-mail: hma@syd.odn.ne.jp