Build-time options

Option

Default

-always-use-cache-dir

no

Specifies whether all instrumented libraries and object files are written to the global cache directory, even if they reside in writable directories.

 

-auto-mount-prefix

/tmp_mnt

Specifies the directory prefix used by the file system auto-mounter, usually /tmp_mnt, to mount remote file systems in NFS environments. Use this option to strip the prefix, if present.

Note: If your auto-mounter alters the prefix, instead of adding a prefix, use the syntax: -auto-mount-prefix=/tmp_mnt/home:/homes to specify that the real filename is constructed from the apparent by replacing
 /tmp_mnt/home with /homes.

If this option is not set correctly, Quantify might be unable to access files on auto-mounted file systems. The auto-mounter might not recognize their names.

 

-cache-dir

<quantifyhome>/cache

Specifies the location of the global directory where Quantify caches instrumented versions of object files and libraries. For more information, read Managing cached object files.

 

-collection-granularity

line

Specifies the level of collection granularity for files containing debugging information. You can specify function, basic-block, or line. For more information, read Changing the granularity of collected data.

 

-collector

not set

Specifies the name of the collect program to be used to sequence and collect static constructors in C++ code. You must set this option to the name of the collect program used by the g++ compiler.

To find the name of the collect program used by the g++ compiler, type:

% g++ -v myprogram.c

For example, if the collect program is:

/usr/local/lib/gcc-lib/ld

use the command:

% quantify –g++=yes \
-collector=/usr/local/lib/gcc-lib/ld g++ myprogram.c

Note: g++ on Solaris does not use a collector for C++ programs; Quantify on Solaris therefore ignores this option.

 

-demangle-program

not set

Specifies the filter you want Quantify to use for demangling the names of variables and functions. For example:

-demangle-program=/usr/bin/c++filt

The filter c++filt is the name of the demangle program for Sun and GNU compilers.

Use this option if Quantify's internal demangling of names is insufficient.

 

-forbidden-directories

system-dependent

Specifies a colon-separated list of directories into which Quantify cannot write files, even if the directories listed are writable. All the subdirectories of forbidden directories are also forbidden. The default values are:

Solaris (32 bit): /lib:/opt:/usr/lib:/usr/ccs/lib
:/usr/4lib:/usr/ucblib:/usr/lang:/usr/local
:/usr/openwin/lib

Solaris (64 bit): /lib/sparcv9:/usr/lib/sparcv9
:/usr/ccs/lib/sparcv9:/usr/ucblib/sparcv9
:/usr/openwin/lib/sparcv9
 

HP-UX: /lib:/usr/lib:/usr/local:/opt:/usr/ccs

 

-force-rebuild

no

Specifies whether Quantify creates a new instrumented version of every file required by the application. You can use this option when changing the granularity level with the –collection-granularity option.

 

-g++

no

Specifies that the g++ compiler should be used. This option additionally tells the linker to invoke the appropriate collect program (specified using the -collector option).

 

-help

 

Prints a short help message about how to use the command line options.

 

 

-ignore-objdebug-shlib

NULL

Use this option when you are using the HP-UX +objdebug compiler option to specify a colon-separated list of libraries for which you do not want +objdebug debug information. Note that Quantify does instrument these libraries, but does not copy the extra debug information into the instrumented versions.

 

-ignore-runtime-environment

no

Builds into an executable all the run-time options specified on the link line and in the QUANTIFYOPTIONS and PUREOPTIONS environment variables. When the Quantify'd program is run, the built-in option values override any current values set in the environment variables.

This option is useful if you are building a Quantify'd executable for someone else to run, and you want to make sure that the options you specify are in effect whenever the executable is run.

Use the -ignore-runtime-environment option when

  • You want someone else to run your program without their run-time environment modifying your run-time option specifications.

  • Your program is started automatically by another program, and you cannot set the environment variable for that program.

  • You have several Quantify'd programs running at one time, and you cannot specify options for each program.

Use the -ignore-runtime-environment option at build time only. Quantify ignores this option if you specify it at run time.

 

-lib-path-length

not set

Specifies a minimum length for all library path names embedded inside your instrumented program or instrumented shared libraries. Quantify extends the path names to the specified length by prepending a series of slashes (/), which has no effect on the meaning.

For example,

% quantify -lib-path-length=50 cc -g myprog.c \
-L/path/dir -lmylib

causes the library to be registered in the resulting a.out file as something like:

 ///////path/dir/libmylib_pure_q802_103260_58_32.sl

This option is intended to allow another team to work with your instrumented programs, even though they place the shared libraries in directories structured differently from yours. When the other team runs your instrumented program, they must use the option -replace-path to substitute the path that their environment requires. Use this option to make sure that the path length is sufficiently long to accommodate the longest absolute library path name that is likely to occur on the other team's system.

The value assigned must be less than or equal to 700. 300 is ordinarily a safe choice.

This option automatically calls the -force-rebuild option to rebuild all components of your program.

This option is supported only on HP-UX.
 

 

-linker

system-dependent

Specifies the name of the linker that Quantify should invoke to produce the executable. Use this option only if you need to bypass the default linker. The default linkers are:

Solaris: /usr/ccs/bin/ld

HP-UX: /bin/ld

 

-print-home-dir

not set

Prints the name of the directory where Quantify is installed, then exits. You can use this option to build the compiler command when including the quantify.h file from the installation directory:

$CC –c $CFLAGS –I`quantify –print-home-dir` myprogram.c

For HP-UX, precede this option with -ptr32 or -ptr64 as appropriate to indicate whether you are using a 32-bit or 64-bit system. For example:

quantify -ptr64 -print-home-dir

 

 

-test-license

not set

Verifies that you are licensed for the correct feature version of Quantify.
 

 

-use-machine

system-dependent

Specifies the build-time analysis of instruction times according to a particular machine. The default value for this option is one of the machines defined in the .machine.<platform> file.

This option is particularly useful if you build your application on a fast compile server but want to test the performance on a more modest machine. You can instrument the application during the build and test it later without having to re-Quantify the application. For more information, read How Quantify times register-window traps.

The entries in a .machine.<platform> file describe:

  • Processors and the cost of different instructions

  • Floating-point accelerators used to perform floating point operations

  • Machines that are combinations of specific processors and fpas running at different clock rates

The .machine.<platform> file supplied with Quantify defines machines currently available. However, new machines are being released and the data in the .machine.<platform> file is subject to change. In addition, you can define anticipated or imaginary machines to see what performance difference a change of hardware might provide.

Contact Rational Software Technical Support for additional information on the .machine.<platform> file and any new machine entries.

 

 

 

-version

not set

Prints Quantify's version number string to stdout and then exits. You can use this option to identify which version of Quantify is in use while running a test suite by incorporating these lines in your test harness scripts:

#!/bin/sh
...
 echo "Run monitored by : `quantify -version`"
 ...

For HP-UX, precede this option with -ptr32 or -ptr64 as appropriate to indicate whether you are using a 32-bit or 64-bit system. For example:

quantify -ptr64 -version

 

 

-visit-history-size

0

Restricts the number of times Quantify scans the same instruction during instrumentation.  

Repeated scanning of an instruction slows the instrumentation process. If your program Also, it is expected that the restriction will normally not result in any troubles. The warning message is of the same type, and can be ignored unless there is a suspicion of something being done the wrong way.