User manual

One can download ready-to-run binaries from Download section. Sources reside at repository. Inside it one can find list of dependencies. There is no information how to build and run tests, but if you need it, please email me.

So, here is how to work with ART: writing resource description (template), running artlibgen to generate header and source for instrumentation, building and running target application with automatic generation of tracefile, running artrepgen to generate human-readable report about finded errors.

1. Resource description.
posix-gcc-mt-file-lint.xml # This is example template with description of two resources
  # Other resources one can describe similar
  # If you are stuck, email me.

2. Library generation.
artlibgen TEMPLATE HEADER SOURCE
artlibgen posix-gcc-mt-file-lint.xml art.h art.c # Example of running
  # If template processed without error, art.h art.c would appear

3. Running target application. But before we have to build it in a right way :-)
It's pretty simple (example for GCC):
3.1 We have to insert into main() as first function call
art_start("");
3.2 gcc -Wno-pointer-to-int-cast art.c # Building art.o
3.3 gcc -include art.h main.c ...      # Build target sources
3.4 Linking all object files (with art.o also) into target binary

Then program can work in a normal way. During running it will write tracefile. If trace file is very huge, it's needed to run artrepgen in online mode, when traces reported in realtime to it (via TCP/IP socket). Target binary and artrepgen can sit on different machines. This scenario isn't described here. If you would like to use that mode, please email me.

4. Running report generator.
artrepgen tracefile # Human-readable information about errors with resources
would be printed to stdout.
If something goes wrong - email me.