[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] binutils-2.23.2 and gcc-4.6.4



Hi,

On torstai 18 huhtikuu 2013, Vincent Rivière wrote:
> On 18/04/2013 08:44, Eero Tamminen wrote:
> > What is stripped
> 
> See my build scripts.
>
> I strip all the libraries with "m68k-atari-mint-strip -S -x", this is
> what was recommended by MiKRO:
> http://sparemint.org/mailinglist/Mailing-Lists/MiNT-List.201102/AANLkTimr
> JOMhk_PJgUz6XpfaU5p86vZKS2tnw_=kQcio@mail.gmail.com.text

I tested what effect those flags and "-X" had on my own binary:
- "-S" doesn't seem to have any effect
" "-X" doesn't seem ot have any effect
- "-x" strips away lots of interesting symbols

> > and how much that saves of the *.a file size?
> 
> Some libraries were compiled with -g (source level debug information).

"strip" man page would indicate that "-S -X" would get
rid of those, but based on above test, I guess not...


> Globally, stripping saved many megabytes.

I'm not interested in the ".L*" symbols as those have
no names, just numbers.  But anything that has a name for
a function, I would very much like to be retained in
the library symbol table.

Maybe you could use the following strip arguments:
	-S -X -w -N '.L[0-9]*'
?

In the case of my binary, that would remove ~3000 symbols,
and retain ~700 extra ones compared to "-x".  ~200 of those
~700 are object file names (with more symbols, only rarely
interesting).  ~100 are of type "a" i.e. constants which
aren't interesting, but I don't know how to get rid of them.


Potentially you could also use:
	-N ___gnu_compiled_c -N 'gcc?_compiled.'

As those are repeated a lot and not really interesting.


	- Eero