makemap.pl  -  Perl  script to make a program map suitable
       for profiling


SYNOPSIS

       makemap.pl program


DESCRIPTION

       makemap.pl is a Perl script that creates a map file  suit­
       able  for  use with profile.pl and analyze.pl.  makemap.pl
       calls ldd to determine which dynamic libraries the program
       uses  and where they are loaded.  makemap.pl then calls nm
       to obtain the symbols for the individual object files that
       make  up the program.  Hence, makemap.pl is unable to cre­
       ate a map file for programs or dynamic libraries that have
       been  stripped  of symbol information by a program such as
       strip.

       makemap.pl   also   includes   a    "fake"    symbol    of
       "LIBRARY:library_path"  for  each  library  used.  If your
       profile output includes entries for this fake  symbol,  it
       means  that  profile  ticks were found in that library but
       there was no procedure name for the area of storage  where
       the  ticks  ocurred.   The  most common reason for this is
       dynamic linkage code.  You may also see  ticks  attributed
       to  the  symbol  "_end"  and "_init".  This is also due to
       ticks that occurred in code that has no corresponding pro­
       cedure  name.   The  most common case here, once again, is
       dynamic linkage code.

       makemap.pl is typically called as:

       makemap.pl program

       and it puts the resulting map in program.map in  the  cur­
       rent  directory.   If  makemap  is called with a full path
       name, e. g.:

       makemap.pl /usr/bin/blah/blah/blah/program

       it still puts the map in the  current  directory,  because
       that is where analyze.pl normally looks for it.

       makemap.pl  is  normally  called by profile.pl; in certain
       cases profile.pl can't determine where the binary  of  the
       program  is,  or  doesn't  notice that the binary bas been
       modified and that makemap.pl needs to be rerun.  In  those
       cases, makemap.pl needs to be run manually.


FILES

       /usr/local/bin/profile.pl
       /usr/local/bin/analyze.pl
       /usr/local/bin/makemap.pl

       ldd, nm, profile.pl, analyze.pl.


Man(1) output converted with man2html