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
=====
GCC
=====
.. contents::
:local:
Remove dead code
================
STRIP_DEAD_CODE = -Wl,-static -fvtable-gc -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-s
-Wl,-static
Link against static libraries. Required for dead-code
elimination.
-fvtable-gc
C++ virtual method table instrumented with garbage collection
information for the linker.
-fdata-sections
Keeps data in separate data sections, so they can be discarded
if unused.
-ffunction-sections
Keeps funcitons in separate data sections, so they can be
discarded if unused.
-Wl,--gc-sections
Tell the linker to garbage collect and discard unused
sections.
-s
Strip the debug information, so as to make the code as small
as possible. (I presume that you'd want to do this in a
dead-code removal build.)
Map file
========
::
$ ld -Map=file.map <opts> <files>
or::
$ gcc -Wl,-Map=file.map <opts> <files>
Predefined macros
=================
::
$ gcc -arch ppc -dM -E - < /dev/null | sort
Default search path
===================
$ echo | gcc -v -x c -E -
$ gcc -print-search-dirs
install: ...
programs: ...
libraries: ...
Use -### in actual invoking::
$ gcc -### -o foo foo.c
$ ld --verbose | grep SEARCH_DIR
``LIBRARY_PATH`` and ``LD_LIBRARY_PATH``::
$ cpp -Wp,-v
$ cpp -Wp,-lang-c++,-v
$ cpp -x c++ -Wp,-v