From: Shaya P. <sp...@gm...> - 2010-11-03 16:38:12
|
On 11/03/2010 12:25 PM, Tor Lillqvist wrote: >> I don't think you really understood my problem. open() fails on large files. > > Works fine here. > <snip> I'll try your example later on my own machine. <snip> > > But as far as I know, on some Unix systems it does. Unless you specify > those preprocessor macros you mentioned that magically turn calls to > open() into actually calling open64(), or whatever. I did have fopen64 in the example I gave (that was an artifact of testing multiple different combinations, but also had just plain open) >> The usual scenario here is that an application compiled >> on a 32-bit platform without -D_FILE_OFFSET_BITS=64 tried to >> open a file whose size exceeds (2<<31)-1 bits; see also O_LARGE‐ >> FILE above. This is the error specified by POSIX.1-2001; in >> kernels before 2.6.24, Linux gave the error EFBIG for this case. > > I wonder why you quote Linux manpages or talk about stuff like > _FILE_OFFSET_BITS and O_LARGEFILE, that has no relevance here. I was just quoting the man page in full in regards to what I would figure is the appropriate errno value. >> basically in mingw and perhaps windows itself, it appears one has to >> have a special open() for files> 4GB, > > Nope. Your MinGW must have some error if you see that. I'll try again and if that fails, reinstall msys again. |