> After a great deal of disappointment because the nice fast Linux
> systems we bought at work (mostly at my urging) compile slower than
> diskless sun3s*, I finally sat down and started playing around with the
> GNU assembler.
>
> Lo and behold, if you define FILE_OFFSET_IS_CHAR_INDEX at the top of
> libbfd.c (or in bfd/Makefile) and recompile, writes get coalesced
> properly and compilation over NFS works the way it should.
bfd/ChangeLog in binutils 2.7:
Tue May 14 12:35:32 1996 Ian Lance Taylor <ian@cygnus.com>
* libbfd.c: Remove #ifdef FILE_OFFSET_IS_CHAR_INDEX, and compile
the code unconditionally.
So as soon as HJ releases his special Linux edition of binutils 2.7 you
can finally forget this issue.
> I just thought there would be other people out on the list who would
> appreciate this information...
>
> [*no flames, please. With compiler, source, and target all over NFS -
> which is a typical configuration with most modern workstations - Linux
> compile performance is awful. The problem is 2-fold - the Linux NFS
> client doesn't coalesce small writes into larger ones, and the GNU
> assembler + GNU libc interact by default in a way which causes the
> assembler to do most of its writing in chunks of 20 to 100 bytes.]
Keep your temp files on local disk or even avoid their existence by
-pipe. Helps extremly for the NFS case.
Ralf