Skip to content

Commit bba79b6

Browse files
author
Gregory L. Lee
committed
bug fixes, cleanup, doc update, etc. Refer to ChangeLog for full list.
1 parent ae989e6 commit bba79b6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+928
-511
lines changed

ChangeLog

+26
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,29 @@
1+
2013-02-15 Gregory L. Lee <[email protected]>
2+
* src/STAT_FrontEnd.C : need to strdup remoteNode into proctab for serial attach
3+
* doc/src/* : updated documentation
4+
5+
2013-02-08 Gregory L. Lee <[email protected]>
6+
* src/STAT_FrontEnd.C : added STAT_FE_HOSTNAME env variable
7+
* scripts/*.in : check for [STAT|LMON|MRNET]_PREFIX env vars and adjust paths accordingly
8+
* config/x_ac_debuglibs.m4 : added --enable-[libdwarf|stackwalker|-rpm to look for includes/libs in /usr
9+
10+
2013-01-30 Gregory L. Lee <[email protected]>
11+
* src/STAT_FrontEnd.C : use std::string instead of char * for topo generation
12+
* : Fixed memory leaks, dead code, etc. identified by Intel's Static Security Analysis Tool
13+
14+
2013-01-30 Gregory L. Lee <[email protected]>
15+
* scripts/STATGUI.py : clear proctab on detach
16+
* : MRNet 3.0 and MRNet 3.1 backwards compatibility fixes
17+
* : StackWalker 8.0 and 2.0 backwards compatibility fixes
18+
* src/STAT_GraphRoutines.[C,h], src/STAT_BackEnd.[C,h] : fixed count+rep graph (need to translate daemon-local rank to MPI rank)
19+
20+
2013-01-29 Gregory L. Lee <[email protected]>
21+
* : Fixed some memory leaks identified by Inspector
22+
* src/STAT_BackEnd.C : fixed Python truncating of "[call|fast]_function"
23+
24+
2013-01-28 Gregory L. Lee <[email protected]>
25+
* src/STAT_GraphRoutines.C : fixed handling of function tables when previously allocated
26+
127
2013-01-22 Gregory L. Lee <[email protected]>
228
* : code clean up
329
* src/STAT_BackEnd.C : fixed Python offset caching

Doxyfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ PROJECT_NAME = STAT
2323
# This could be handy for archiving the generated documentation or
2424
# if some version control system is used.
2525

26-
PROJECT_NUMBER = 1.0
26+
PROJECT_NUMBER = 2.0.0
2727

2828
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
2929
# base path where the generated documentation will be put.
@@ -459,7 +459,7 @@ WARN_LOGFILE =
459459
# directories like "/usr/src/myproject". Separate the files or directories
460460
# with spaces.
461461

462-
INPUT = src/STAT_FrontEnd.h src/STAT_FrontEnd.C src/STAT.h src/STAT_BackEnd.h src/STAT_BackEnd.C src/STAT_FilterDefinitions.C src/STAT.C src/STATD.C src/STATBench.C src/STATBenchD.C scripts/STATview.py scripts/STATGUI.py doc/src/mainpage
462+
INPUT = src/STAT_FrontEnd.h src/STAT_FrontEnd.C src/STAT.h src/STAT_BackEnd.h src/STAT_BackEnd.C src/STAT_FilterDefinitions.C src/STAT.C src/STATD.C src/STATBench.C src/STATBenchD.C src/STAT_merge.C src/STAT_GraphRoutines.h src/STAT_GraphRoutines.C scripts/STAThelper.py scripts/STATmerge.py scripts/STATview.py scripts/STATGUI.py doc/src/mainpage
463463

464464
# If the value of the INPUT tag contains directories, you can use the
465465
# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp

INSTALL

+22-10
Original file line numberDiff line numberDiff line change
@@ -59,24 +59,32 @@ Installation
5959
within the stat-gui script. To disable the building of the GUI,
6060
use the --enable-gui=no configure option.
6161

62-
On BlueGene systems, also be sure to configure --with-bluegene.
63-
This will enable the BGL macro for BlueGene specific
64-
compilation. Similarly, to compile on Cray XT systems, specify
65-
--with-cray-xt.
62+
To compile on Cray systems, specify --with-cray-xt. On BlueGene
63+
systems, also be sure to configure --with-bluegene. This will
64+
enable the BGL macro for BlueGene specific compilation. It is
65+
important to note that on BlueGene systems, you may need to use
66+
an alternate hostname for the front-end node in order to get
67+
MRNet to bind to the appropriate network interface that can
68+
communicate with the I/O nodes. By default, STAT will append
69+
"-io" to the hostname. Alternatively, you can specify the
70+
hostname with the STAT_FE_HOSTNAME environment variable.
6671

67-
An example configure line for Cray XT:
72+
An example configure line for Cray:
6873

6974
./configure --with-launchmon=/tmp/work/lee218/install \
7075
--with-mrnet=/tmp/work/lee218/install \
7176
--with-graphlib==/tmp/work/lee218/install \
7277
--with-stackwalker=/tmp/work/lee218/install \
7378
--with-libdwarf=/tmp/work/lee218/install \
7479
--prefix=/tmp/work/lee218/install --with-cray-xt \
75-
MPICC=cc MPICXX=CC MPIF77=ftn --enable-shared LD=/usr/bin/ld.x
80+
MPICC=cc MPICXX=CC MPIF77=ftn --enable-shared LD=/usr/bin/ld
7681

77-
Note that specifying LD=/usr/bin/ld.x is only advised on Cray
78-
systems, as doing so on other systems may inhibit the abililty
79-
to generate shared libraries. Next you just need to run:
82+
Note that specifying LD=/usr/bin/ld may be required on Cray
83+
systems to avoid using the compute node linker. It is also
84+
worth noting that Cray includes a build of STAT as part of
85+
their system software stack. It is typically installed in
86+
/opt/cray/stat and can be loaded via modules. After running
87+
configure you just need to run:
8088

8189
make
8290
make install
@@ -89,4 +97,8 @@ make install
8997
components can, however, be overridden with the --daemon and
9098
--filter arguments. Further, the STAT_PREFIX environment
9199
variable can be defined to override the hardcoded paths in
92-
STAT.
100+
STAT. STAT will also, by default, add rpaths to dependent
101+
libraries. This behavior can be disabled by specifying
102+
"--with-rpath=no". However, when doing so, you must be sure to
103+
set LD_LIBRARY_PATH to point to the directories containing the
104+
dependent libraries.

config/x_ac_debuglibs.m4

+14
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,18 @@
11
AC_DEFUN([X_AC_DEBUGLIBS], [
2+
3+
AC_ARG_ENABLE(stackwalker-rpm,
4+
[AS_HELP_STRING([--enable-stackwalker-rpm],[Enable the use of rpm-installed stackwalker, default=no])],
5+
[CXXFLAGS="$CXXFLAGS -I/usr/include/dyninst"
6+
LDFLAGS="$LDFLAGS -L/usr/lib64/dyninst"
7+
RPATH_FLAGS="$RPATH_FLAGS -Wl,-rpath=/usr/lib64/dyninst"],
8+
[CXXFLAGS="$CXXFLAGS"]
9+
)
10+
AC_ARG_ENABLE(libdwarf-rpm,
11+
[AS_HELP_STRING([--enable-libdwarf-rpm],[Enable the use of rpm-installed libdwarf, default=no])],
12+
[CXXFLAGS="$CXXFLAGS -I/usr/include/libdwarf"],
13+
[CXXFLAGS="$CXXFLAGS"]
14+
)
15+
216
AC_ARG_WITH(stackwalker,
317
[AS_HELP_STRING([--with-stackwalker=prefix],
418
[Add the compile and link search paths for stackwalker]

configure

+46-20
Original file line numberDiff line numberDiff line change
@@ -953,6 +953,8 @@ with_python
953953
with_graphviz
954954
with_bluegene
955955
with_cray_xt
956+
enable_stackwalker_rpm
957+
enable_libdwarf_rpm
956958
with_stackwalker
957959
with_libdwarf
958960
with_graphlib
@@ -1623,6 +1625,10 @@ Optional Features:
16231625
optimize for fast installation [default=yes]
16241626
--disable-libtool-lock avoid locking (might break parallel builds)
16251627
--enable-gui Enable the compilation of the STAT GUI.
1628+
--enable-stackwalker-rpm
1629+
Enable the use of rpm-installed stackwalker,
1630+
default=no
1631+
--enable-libdwarf-rpm Enable the use of rpm-installed libdwarf, default=no
16261632
--enable-debug enable debug build
16271633
--enable-rpath Enable the use of rpaths, default=yes
16281634
--enable-statbench Enable the compilation of STATBench, the STAT
@@ -5096,13 +5102,13 @@ if test "${lt_cv_nm_interface+set}" = set; then
50965102
else
50975103
lt_cv_nm_interface="BSD nm"
50985104
echo "int some_variable = 0;" > conftest.$ac_ext
5099-
(eval echo "\"\$as_me:5099: $ac_compile\"" >&5)
5105+
(eval echo "\"\$as_me:5105: $ac_compile\"" >&5)
51005106
(eval "$ac_compile" 2>conftest.err)
51015107
cat conftest.err >&5
5102-
(eval echo "\"\$as_me:5102: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
5108+
(eval echo "\"\$as_me:5108: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
51035109
(eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
51045110
cat conftest.err >&5
5105-
(eval echo "\"\$as_me:5105: output\"" >&5)
5111+
(eval echo "\"\$as_me:5111: output\"" >&5)
51065112
cat conftest.out >&5
51075113
if $GREP 'External.*some_variable' conftest.out > /dev/null; then
51085114
lt_cv_nm_interface="MS dumpbin"
@@ -6308,7 +6314,7 @@ ia64-*-hpux*)
63086314
;;
63096315
*-*-irix6*)
63106316
# Find out which ABI we are using.
6311-
echo '#line 6311 "configure"' > conftest.$ac_ext
6317+
echo '#line 6317 "configure"' > conftest.$ac_ext
63126318
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
63136319
(eval $ac_compile) 2>&5
63146320
ac_status=$?
@@ -8869,11 +8875,11 @@ else
88698875
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
88708876
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
88718877
-e 's:$: $lt_compiler_flag:'`
8872-
(eval echo "\"\$as_me:8872: $lt_compile\"" >&5)
8878+
(eval echo "\"\$as_me:8878: $lt_compile\"" >&5)
88738879
(eval "$lt_compile" 2>conftest.err)
88748880
ac_status=$?
88758881
cat conftest.err >&5
8876-
echo "$as_me:8876: \$? = $ac_status" >&5
8882+
echo "$as_me:8882: \$? = $ac_status" >&5
88778883
if (exit $ac_status) && test -s "$ac_outfile"; then
88788884
# The compiler can only warn and ignore the option if not recognized
88798885
# So say no if there are warnings other than the usual output.
@@ -9208,11 +9214,11 @@ else
92089214
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
92099215
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
92109216
-e 's:$: $lt_compiler_flag:'`
9211-
(eval echo "\"\$as_me:9211: $lt_compile\"" >&5)
9217+
(eval echo "\"\$as_me:9217: $lt_compile\"" >&5)
92129218
(eval "$lt_compile" 2>conftest.err)
92139219
ac_status=$?
92149220
cat conftest.err >&5
9215-
echo "$as_me:9215: \$? = $ac_status" >&5
9221+
echo "$as_me:9221: \$? = $ac_status" >&5
92169222
if (exit $ac_status) && test -s "$ac_outfile"; then
92179223
# The compiler can only warn and ignore the option if not recognized
92189224
# So say no if there are warnings other than the usual output.
@@ -9313,11 +9319,11 @@ else
93139319
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
93149320
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
93159321
-e 's:$: $lt_compiler_flag:'`
9316-
(eval echo "\"\$as_me:9316: $lt_compile\"" >&5)
9322+
(eval echo "\"\$as_me:9322: $lt_compile\"" >&5)
93179323
(eval "$lt_compile" 2>out/conftest.err)
93189324
ac_status=$?
93199325
cat out/conftest.err >&5
9320-
echo "$as_me:9320: \$? = $ac_status" >&5
9326+
echo "$as_me:9326: \$? = $ac_status" >&5
93219327
if (exit $ac_status) && test -s out/conftest2.$ac_objext
93229328
then
93239329
# The compiler can only warn and ignore the option if not recognized
@@ -9368,11 +9374,11 @@ else
93689374
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
93699375
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
93709376
-e 's:$: $lt_compiler_flag:'`
9371-
(eval echo "\"\$as_me:9371: $lt_compile\"" >&5)
9377+
(eval echo "\"\$as_me:9377: $lt_compile\"" >&5)
93729378
(eval "$lt_compile" 2>out/conftest.err)
93739379
ac_status=$?
93749380
cat out/conftest.err >&5
9375-
echo "$as_me:9375: \$? = $ac_status" >&5
9381+
echo "$as_me:9381: \$? = $ac_status" >&5
93769382
if (exit $ac_status) && test -s out/conftest2.$ac_objext
93779383
then
93789384
# The compiler can only warn and ignore the option if not recognized
@@ -12171,7 +12177,7 @@ else
1217112177
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1217212178
lt_status=$lt_dlunknown
1217312179
cat > conftest.$ac_ext <<_LT_EOF
12174-
#line 12174 "configure"
12180+
#line 12180 "configure"
1217512181
#include "confdefs.h"
1217612182

1217712183
#if HAVE_DLFCN_H
@@ -12267,7 +12273,7 @@ else
1226712273
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1226812274
lt_status=$lt_dlunknown
1226912275
cat > conftest.$ac_ext <<_LT_EOF
12270-
#line 12270 "configure"
12276+
#line 12276 "configure"
1227112277
#include "confdefs.h"
1227212278

1227312279
#if HAVE_DLFCN_H
@@ -14287,11 +14293,11 @@ else
1428714293
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1428814294
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1428914295
-e 's:$: $lt_compiler_flag:'`
14290-
(eval echo "\"\$as_me:14290: $lt_compile\"" >&5)
14296+
(eval echo "\"\$as_me:14296: $lt_compile\"" >&5)
1429114297
(eval "$lt_compile" 2>conftest.err)
1429214298
ac_status=$?
1429314299
cat conftest.err >&5
14294-
echo "$as_me:14294: \$? = $ac_status" >&5
14300+
echo "$as_me:14300: \$? = $ac_status" >&5
1429514301
if (exit $ac_status) && test -s "$ac_outfile"; then
1429614302
# The compiler can only warn and ignore the option if not recognized
1429714303
# So say no if there are warnings other than the usual output.
@@ -14386,11 +14392,11 @@ else
1438614392
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1438714393
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1438814394
-e 's:$: $lt_compiler_flag:'`
14389-
(eval echo "\"\$as_me:14389: $lt_compile\"" >&5)
14395+
(eval echo "\"\$as_me:14395: $lt_compile\"" >&5)
1439014396
(eval "$lt_compile" 2>out/conftest.err)
1439114397
ac_status=$?
1439214398
cat out/conftest.err >&5
14393-
echo "$as_me:14393: \$? = $ac_status" >&5
14399+
echo "$as_me:14399: \$? = $ac_status" >&5
1439414400
if (exit $ac_status) && test -s out/conftest2.$ac_objext
1439514401
then
1439614402
# The compiler can only warn and ignore the option if not recognized
@@ -14438,11 +14444,11 @@ else
1443814444
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1443914445
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1444014446
-e 's:$: $lt_compiler_flag:'`
14441-
(eval echo "\"\$as_me:14441: $lt_compile\"" >&5)
14447+
(eval echo "\"\$as_me:14447: $lt_compile\"" >&5)
1444214448
(eval "$lt_compile" 2>out/conftest.err)
1444314449
ac_status=$?
1444414450
cat out/conftest.err >&5
14445-
echo "$as_me:14445: \$? = $ac_status" >&5
14451+
echo "$as_me:14451: \$? = $ac_status" >&5
1444614452
if (exit $ac_status) && test -s out/conftest2.$ac_objext
1444714453
then
1444814454
# The compiler can only warn and ignore the option if not recognized
@@ -16031,6 +16037,26 @@ fi
1603116037

1603216038

1603316039

16040+
# Check whether --enable-stackwalker-rpm was given.
16041+
if test "${enable_stackwalker_rpm+set}" = set; then
16042+
enableval=$enable_stackwalker_rpm; CXXFLAGS="$CXXFLAGS -I/usr/include/dyninst"
16043+
LDFLAGS="$LDFLAGS -L/usr/lib64/dyninst"
16044+
RPATH_FLAGS="$RPATH_FLAGS -Wl,-rpath=/usr/lib64/dyninst"
16045+
else
16046+
CXXFLAGS="$CXXFLAGS"
16047+
16048+
fi
16049+
16050+
# Check whether --enable-libdwarf-rpm was given.
16051+
if test "${enable_libdwarf_rpm+set}" = set; then
16052+
enableval=$enable_libdwarf_rpm; CXXFLAGS="$CXXFLAGS -I/usr/include/libdwarf"
16053+
else
16054+
CXXFLAGS="$CXXFLAGS"
16055+
16056+
fi
16057+
16058+
16059+
1603416060
# Check whether --with-stackwalker was given.
1603516061
if test "${with_stackwalker+set}" = set; then
1603616062
withval=$with_stackwalker; CXXFLAGS="$CXXFLAGS -I${withval}/include"

doc/quickstart/stat_quickstart.pdf

121 Bytes
Binary file not shown.

doc/src/io_watchdog.sgml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@ You will then need to run your application with the --io-watchdog <command>srun<
1717
</screen>
1818
</informalexample>
1919
<para>
20-
When STAT is invoked, it will create a STAT_results directory in the current working directory, as it would in a typical STAT run. The outputted .dot files can then be viewed with <command>STATview</command>. For more details about using IO Watchdog, refer to the IO Watchdog README file in /usr/local/tools/io-watchdog/README.
20+
When STAT is invoked, it will create a stat_results directory in the current working directory, as it would in a typical STAT run. The outputted .dot files can then be viewed with <command>stat-view</command>. For more details about using IO Watchdog, refer to the IO Watchdog README file in /usr/local/tools/io-watchdog/README.
2121
</para>

doc/src/stat_description.sgml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
<para>
2-
STAT (the Stack Trace Analysis Tool) is a highly scalable, lightweight tool that gathers and merges stack traces from all of the processes of a parallel application. After running the STAT command, STAT will create a STAT_results directory in your current working directory. This directory will contain a subdirectory, based on your parallel application's executable name, with the merged stack traces in DOT format.
2+
STAT (the Stack Trace Analysis Tool) is a highly scalable, lightweight tool that gathers and merges stack traces from all of the processes of a parallel application. After running the STAT command, STAT will create a stat_results directory in your current working directory. This directory will contain a subdirectory, based on your parallel application's executable name, with the merged stack traces in DOT format.
33
</para>
44

doc/src/stat_environment_variables.sgml

+8
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,14 @@ Several environment variables influence STAT and its dependent packages. Note t
122122
</para>
123123
</listitem>
124124
</varlistentry>
125+
<varlistentry>
126+
<term>STAT_FE_HOSTNAME=<replaceable class="parameter">value</replaceable></term>
127+
<listitem>
128+
<para>
129+
Set the STAT Front End hostname to <replaceable class="parameter">value</replaceable>. This may be necessary for example on BlueGene systems to use the proper network interface for the I/O nodes to connect back to.
130+
</para>
131+
</listitem>
132+
</varlistentry>
125133
<varlistentry>
126134
<term>STAT_CHECK_NODE_ACCESS=<replaceable class="parameter">value</replaceable></term>
127135
<listitem>

doc/src/stat_example.sgml

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ With the -a option (or when automatic topology is set as default), STAT will try
3232
</screen>
3333
</informalexample>
3434
<para>
35-
Upon successful completion, STAT will write its output to a STAT_results directory within the current working directory. Each run creates a subdirectory named after the application with a unique integer ID. STAT's output indicates the directory created with a message such as:
35+
Upon successful completion, STAT will write its output to a stat_results directory within the current working directory. Each run creates a subdirectory named after the application with a unique integer ID. STAT's output indicates the directory created with a message such as:
3636
</para>
3737
<informalexample>
3838
<screen>
39-
Results written to /home/user/bin/STAT_results/mpi_application.6
39+
Results written to /home/user/bin/stat_results/mpi_application.6
4040
</screen>
4141
</informalexample>
4242
<para>

doc/src/stat_installation.sgml

+6-4
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ STAT creates wrapper scripts for the stat-cl command line and stat-gui commands.
88
STAT will try to build the GUI by default. If you need to modify your PYTHONPATH envirnment variable to search for side installed site-packages, you can do this by specifying STAT_PYTHONPATH=path during configure. This will add the appropriate directory to the $PYTHONPATH environment variable within the stat-gui script. To disable the building of the GUI, use the --enable-gui=no configure option.
99
</para>
1010
<para>
11-
On BlueGene systems, also be sure to configure --with-bluegene. This will enable the BGL macro for BlueGene specific compilation. Similarly, to compile on Cray XT systems, specify --with-cray-xt.
11+
To compile on Cray systems, specify --with-cray-xt. On BlueGene systems, also be sure to configure --with-bluegene. This will enable the BGL macro for BlueGene specific compilation. It is important to note that on BlueGene systems, you may need to use an alternate hostname for the front-end node in order to get MRNet to bind to the appropriate network interface that can communicate with the I/O nodes. By default, STAT will append "-io" to the hostname. Alternatively, you can specify the hostname with the STAT_FE_HOSTNAME environment variable.
1212
</para>
1313
<para>
14-
An example configure line for Cray XT:
14+
An example configure line for Cray:
1515
</para>
1616
<informalexample>
1717
<screen>
@@ -21,11 +21,11 @@ An example configure line for Cray XT:
2121
--with-stackwalker=/tmp/work/lee218/install \
2222
--with-libdwarf=/tmp/work/lee218/install \
2323
--prefix=/tmp/work/lee218/install --with-cray-xt \
24-
MPICC=cc MPICXX=CC MPIF77=ftn --enable-shared LD=/usr/bin/ld.x
24+
MPICC=cc MPICXX=CC MPIF77=ftn --enable-shared LD=/usr/bin/ld
2525
</screen>
2626
</informalexample>
2727
<para>
28-
Note that specifying LD=/usr/bin/ld.x is only advised on Cray systems, as doing so on other systems may inhibit the abililty to generate shared libraries. Next you just need to run:
28+
Note that specifying LD=/usr/bin/ld may be required on Cray systems to avoid using the compute node linker. It is also worth noting that Cray includes a build of STAT as part of their system software stack. It is typically installed in /opt/cray/stat and can be loaded via modules. After running configure you just need to run:
2929
</para>
3030
<informalexample>
3131
<screen>
@@ -35,4 +35,6 @@ make install
3535
</informalexample>
3636
<para>
3737
Note that STAT hardcodes the paths to its daemon and filter shared object, assuming that they are in $prefix/bin and $prefix/lib respectively, thus testing should be done in the install prefix after running "make install" and the installation directory should not be moved. The path to these components can, however, be overridden with the --daemon and --filter arguments. Further, the STAT_PREFIX environment variable can be defined to override the hardcoded paths in STAT.
38+
39+
STAT will also, by default, add rpaths to dependent libraries. This behavior can be disabled by specifying "--with-rpath=no". However, when doing so, you must be sure to set LD_LIBRARY_PATH to point to the directories containing the dependent libraries.
3840
</para>

0 commit comments

Comments
 (0)