Wenn Sie neue Programme erstellen, die auf große POSIX-Dateien zugreifen, dann müssen Sie Folgendes beachten:
Setzen Sie vor der ersten Include-Anweisung folgende Define-Anweisung:
#define _LARGEFILE64_SOURCE 1
Geben Sie den Header unistd.h als erste Include-Anweisung an.
Damit stehen dem Programm die notwendigen Schnittstellen und Datentypen zur Vefügung.Benutzen Sie die 64-bit-Funktionen, um auf große POSIX-Dateien zuzugreifen. D.h. Sie verwenden einfach open64(), lseek64(), ... an Stelle von der gewohnten Funktionen open(), lseek(),... .
Die folgende Liste gibt eine Überblick über alle 64-bit-Funktionen:
creat64() fstat64() lseek64() stat64() fgetpos64() fstatvfs64() lstat64() statvf64()s fopen64() ftell64() mmap64() statvfs64() freopen64() ftruncate64() open64() truncate64() fseek64() getdents64() readdir64() fsetpos64()
getrlimit64()
setrlimit64()
Verwenden Sie im Programm die 64-bit-Datentypen an Stelle der 32-bit-Datentypen, z.B. off64_t (64-Bit) statt off_t (32-Bit). Diese Datentypen sind in der Include-Datei sys/types.h definiert. Dies ermöglicht es, in einem Programm die 64-bit- und die 32-bit-Schnittstellen parallel zu verwenden, z.B. lseek() und lseek64(). Damit wird die Migration von Programmen erleichtert.