| Herr Glania,
The way that atom works is by instrumenting your executable, and (if it
is built using shared libraries), some or all of the shared libraries (.so
files) it uses. Instrumentation involves adding code to the application (and
libraries) to check, for example, memory allocation and usage with the third
degree tool. Atom and its tools should only be considered as development
test tools, the code they produce is not intended to be delivered to customers,
because it is larger and slower.
Which shared libraries are instrumented is requested by use of the -all
or "-incobj <objectname>" flags when you perform the intrumentation run. Even
if no shared libraries are specifically requested, libc will be instrumented by
default to libc.so.third.<filename>.
The instrumented shared libraries are placed by default in the directory
where atom was run from, or this can be directed using the "-shlibdir
<dirname>" flag. You should be able to see this using the "ls" command.
When running the "atomised" executable, it is necessary to add the
location of the instrumented shared libraries to the path list pointed to by
the LD_LIBRARY_PATH environment varable , so the run-time loader can find them.
Usually, LD_LIBRARY_PATH is not set by default.
This is described in the man page for atom, and also the user
documentation (Programmers Guide, Chapter 7). See the loader man page for more
information on LD_LIBRARY_PATH.
regards,
Ian Chamberlin,
Digital Equipment Co, Software Partner Engineering.
|
| Hello Damian,
Whilst it is sensible to follow up open calls by mail, it is best to
submit new requests for neww questions, since we are not always in the office,
and mails may not be answered immediately. (I am out all next week).
Regarding your questions,
By moving your atomised library to /usr/shlib you are putting it in the default
loader search path, but you will have to copy it every ime you change it. By
setting LD_LIBRARY_PATH you will add your directory to the loader's search
path, so new versions will automatically be found. For ksh you shoud do
something like
ksh> LD_LIBRARY_PATH=<file_path>
ksh> export LD_LIBRARY_PATH
check that it is set using
ksh> echo $LD_LIBRARY_PATH
I attach the description for the Sytem V Environment product which youy
mentioned. Please see if it does what you need, it does provide Sytem V
compatible commands and libraries.
Unfortunately different suppliers makes seem to be different, so we provide
different ones for compati bility. The one you are using (man 1u make) is an
Ultrix compatibilty one. By all means use it, but be aware that it may retire
in the future. There is also a Posix compatible make (man 1p make), and of
course gnumake is available from the usual sources.
the shell you are using is also a Posix style Bourne shell (man 1p sh)
POsix style commands are supplied for Posix compliance, and you may happily use
them if they work best for you. They are part of the options we offer, to be
compliant with current standards and to provide as much flexibility for users
coming from other systems.
I am not aware of any other awks, except for nawk which is supplied with the
Sytem V option, and there is presumably one available from GNU.
I hope this helps.
regards,
Ian.
[System V SPD delested]
|