Include only local subsections into TOC. This prevent duplication of
TOC when build single page HTML document. Also this make unnecessary CSS hack
to hide document title as top level section.
.. -*- coding: utf-8; -*-
.. include:: HEADER.rst
===========================
Reducing binary code size
===========================
.. contents::
:local:
Common receipt
==============
Configure build with disabling unused features e.g.::
$ ./configure --without-png
Link dynamically instead statically (on your platform shared library may be
already present).
Avoid debug build. Make release/final build instead debug.
Use packers. Packer compress binary so binary smaller. When program load
decompress itself, so startup time increase.
Binary packers::
http://upx.sourceforge.net
Home page.
GCC
======
Use ``-Os`` when produces ``*.o`` files.
Use ``-s`` when produces executable. And ``--remove-section=.comment`` and
``--remove-section=.note"``.
Use::
$ strip --strip-all <executable>
and::
$ gcc -ffunction-sections -fdata-sections -c -o my.o my.c
$ gcc -Wl,--gc-sections -o my my.o
MSVC
====
Use ``/Os`` when produces ``*.obj`` files.