On Wed, 15 Apr 2026 06:48:42 -0000 (UTC), Anthk wrote:
By default under GNU/Linux you need to pass a preprocessor flag to
enforce large file support on 32 bit programs.
All that does is choose which kernel calls your source code will make.
Lawrence D?Oliveiro wrote:
On Wed, 15 Apr 2026 06:48:42 -0000 (UTC), Anthk wrote:
By default under GNU/Linux you need to pass a preprocessor flag to
enforce large file support on 32 bit programs.
All that does is choose which kernel calls your source code will make.
It does rather more than that. The primary thing it does is change the definition of off_t so that it is a 64-bit integer instead of 32.
Lawrence D?Oliveiro wrote:
On Wed, 15 Apr 2026 06:48:42 -0000 (UTC), Anthk wrote:
By default under GNU/Linux you need to pass a preprocessor flag to
enforce large file support on 32 bit programs.
All that does is choose which kernel calls your source code will
make.
It does rather more than that. The primary thing it does is change
the definition of off_t so that it is a 64-bit integer instead of
32.
On Fri, 17 Apr 2026 14:20:59 +0100, Geoff Clare wrote:
Lawrence D?Oliveiro wrote:
On Wed, 15 Apr 2026 06:48:42 -0000 (UTC), Anthk wrote:
By default under GNU/Linux you need to pass a preprocessor flag to
enforce large file support on 32 bit programs.
All that does is choose which kernel calls your source code will
make.
It does rather more than that. The primary thing it does is change
the definition of off_t so that it is a 64-bit integer instead of
32.
Again, that?s just to suit different kernel calls. The kernel doesn?t
know, doesn?t care, what ?off_t? means in your source code, or indeed
any other name you might use.
Lawrence D?Oliveiro wrote:
On Fri, 17 Apr 2026 14:20:59 +0100, Geoff Clare wrote:
Lawrence D?Oliveiro wrote:
On Wed, 15 Apr 2026 06:48:42 -0000 (UTC), Anthk wrote:
By default under GNU/Linux you need to pass a preprocessor flag to
enforce large file support on 32 bit programs.
All that does is choose which kernel calls your source code will
make.
It does rather more than that. The primary thing it does is change
the definition of off_t so that it is a 64-bit integer instead of
32.
Again, that?s just to suit different kernel calls. The kernel doesn?t
know, doesn?t care, what ?off_t? means in your source code, or indeed
any other name you might use.
The kernel doesn't care about the change of off_t size, but programmers
very much need to care. If you try to mix object files compiled with >different off_t sizes, and they interact in any way that involves
off_t, it is not going to end well. The way glibc handles this for its
own functions (that I mentioned but you didn't quote) is a special case
of this, but for third-party libraries you're probably on your own.
Lawrence D?Oliveiro wrote:
On Fri, 17 Apr 2026 14:20:59 +0100, Geoff Clare wrote:
Lawrence D?Oliveiro wrote:
On Wed, 15 Apr 2026 06:48:42 -0000 (UTC), Anthk wrote:
By default under GNU/Linux you need to pass a preprocessor flag
to enforce large file support on 32 bit programs.
All that does is choose which kernel calls your source code will
make.
It does rather more than that. The primary thing it does is change
the definition of off_t so that it is a 64-bit integer instead of
32.
Again, that?s just to suit different kernel calls. The kernel
doesn?t know, doesn?t care, what ?off_t? means in your source code,
or indeed any other name you might use.
The kernel doesn't care about the change of off_t size, but
programmers very much need to care.
| Sysop: | Tetrazocine |
|---|---|
| Location: | Melbourne, VIC, Australia |
| Users: | 14 |
| Nodes: | 8 (0 / 8) |
| Uptime: | 133:57:06 |
| Calls: | 212 |
| Files: | 21,502 |
| Messages: | 83,288 |