|
Understand can parse a C/C++ project helping reverse engineer it
[begin snip from the www site]
Understand parses any sized C or C++ project to help you reverse
engineer, document and understand it and thus maintain it better.
It supports K&R C, ANSI C, or C++ source code. Projects can contain
mixed C/C++ code as well. The parser is efficient, fast, and can
handle very large projects. Very little is needed to get started
- just aim it at your source tree. Optionally (and for more parsing
accuracy) add any externally defined macro definitions and include
paths. All of this is done from the GUI - you should be able to do
an initial analysis of your project in a few minutes.
Understand for C++ quickly documents Class inheritance hierarchies
(Base Class and Derived Classes), Call and CallBy Trees, Include
and Include By Trees, as well as where and how everything in your
source code is used (cross reference). Understand for C++ creates
detailed automatic documentation about your source code in HTML
and text reports Using the PERL and C API you can write your own
documentation generators.
[end snip from the www site]
You need a limited time period license to run the product in
evaluation mode. One can be obtained in the www site. A permanent
license can be purchased there too.
- Instalation issues:
This port has a hardcoded directory structure which is required to
run it. Therefore, some measures are necessary to install it under
FreeBSD following handbook rules'
1) All files but binaries are installed according to hier(7)
2) A fake structure is created under ${PREFIX}/lib/understand_c to
please the program and soft links are made there to the correct
locations under hier(7)
3) The binaries are installed under ${PREFIX}/lib/understand_c/bin
and a wrapper is installed under ${PREFIX}/bin pointing to the fake
structure
4) Since a license is required to run the program, warnings are
issued when either it is installed or a package is added
5) Since the legal status is still being debated with the developers,
it will be marked as RESTRICTED for the time being and LEGAL
will be updated accordingly
Notes:
svn path=/head/; revision=39327
|