tags:

views:

73

answers:

2

Hi,

I'm trying to read a large file (> 2.0 GB). The seeking is done by lseek64, then I tried to read using read(fileHandle, buffer, bufferLength)\ pread64(fileHandle, buffer, bufferLength, offset) - but both return with -1.

What could it be?

Thanks in advance!

A: 
ssize_t count = read(fileHandle, buffer, bufferLength);
if ( count == -1 )
{
 fprintf(stderr, "can't read file: %m\n");
 exit(1);
}
Nikel
A: 

Do you have

#define _FILE_OFFSET_BITS 64

before you include the syscall headers? Otherwise, show some code.

janneb