Go to main content
Oracle Developer Studio 12.6 Man Pages

Exit Print View

Updated: June 2017
 
 

cxref(1)

Name

cxref - generate C program cross-reference

Synopsis

cxref [options] files

Description

The cxref command analyzes a collection of C files and builds a cross-reference table. cxref uses a special version of cc to include #define'd information in its symbol table. It generates a list of all symbols (auto, static, and global) in each individual file, or, with the -c option, in combination. The table includes four fields: NAME, FILE, FUNCTION, and LINE. The line numbers appearing in the LINE field also show reference marks as appropriate. The reference marks include:

 
assignment     =
declaration    -
definition     *

If no reference marks appear, you can assume a general reference.

Options

cxref interprets the -D, -I, -U options in the same manner that cc does. In addition, cxref interprets the following options:

-C

Run only the first pass of cxref, creating a .cx file that can later be passed to cxref. This is similar to the -c option of cc or lint.

-c

Combine the source files into a single report. Without the -c option, cxref generates a separate report for each file on the command line.

-d

Disable printing declarations, making the report easier to read.

-F

Print the full path of the referenced file names.

-Lcols

Modify the number of columns in the LINE field. If you do not specify -L, cxref defaults to five columns.

-l

Do not print local variables. Print only global and file scope statistics.

-o file

Direct output to file.

-R

Include referenced functions in the cross-reference list..

-s

Operate silently; do not print input file names.

-t

Format listing for 80-column width.

-V

Print version information on the standard error.

-Wname,file,function,line

Change the default width of all fields. You must supply a value for all four columns. The default widths are:

 
Field       Characters

NAME        15
FILE        13
FUNCTION    15
LINE        20 (4 per column)
-wnum

Format output no wider than num (decimal) columns. If -w is not specified, or if num is less than 51, the width will default to 80 columns.

Examples

 
a.c

1    main()
2    {
3         int i;
4         extern char c;
5
6         i=65;
7         c=(char)i;
8    }

Resulting cross-reference table:

NAME    FILE          FUNCTION    LINE

c       a.c           ---         4-      7=
i       a.c           main        3*      6=   7
main    a.c           ---         2*

Environment Variables

TMPDIR

cxref writes temporary files to the directory set by this environmental variable. If TMPDIR is not set, cxref uses /var/tmp [see tempnam in tmpnam(3S)].

Files

TMPDIR/tcx.*

temporary files

TMPDIR/cx.*

temporary files

See Also

cc(1), lint(1)

Diagnostics

Error messages usually mean you cannot compile the files.