This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
How to make section take no space in output file?
- From: Rick Mann <rmann at latencyzero dot com>
- To: Binutils <binutils at sourceware dot org>
- Date: Fri, 11 Jan 2008 11:28:30 -0800
- Subject: How to make section take no space in output file?
I'm building an embedded target binary that has a couple of large data
structures (frame buffers and MMU tables). In the C code they're
represented as arrays, and they're assigned to their own sections,
which the linker script ensures are properly aligned. Two problems
arise: the alignment introduces very large gaps in the file (corrected
with the AT linker script directive), and they are large themselves
(each framebuffer structure is nearly a megabyte in size).
As you can imagine, this makes downloads to the target time consuming.
I can (rather clumsily) deal with the alignment issue (the
aforementioned AT), but how do I keep the sections from taking up any
space? I could even make them overlap, but the largest one will still
use up space. Since these have no data that needs to be written to the
output file, it seems like there'd be an easy way to just say "this
section shouldn't take up space in the file, and neither should the
sections that follow".
If I understand ld correctly, this is how the .bss section behaves. It
consumes no space in the resulting output file. How does the linker
know to do this for .bss, and how do I get it to treat my other
sections similarly?
Thanks very much!
--
Rick