Home

Awesome

ENRE-cpp

ENRE-cpp is a tool extracting entities and relations for C++ based on Eclipse/CDT.

Features

Supported Language

LanguageMaximum Version
C++14

Getting Started

ENRE-cpp has been tested to be worked with Java 17.

Build & Installation

in case on the GNU/Linux and Mac platform:

// chmod a+x install.sh
./install.sh

in case on the Windows platfrom:

./install.bat

After installed the required libraries, you can build the jar file by using:

mvn clean package assembly:single

Usage

Append -h or --help without any other arguments to see list of options:

Usage: ENRE-CPP [-hv] [-d=<dirs>]... [-p=<program_environment>]... directory
                projectName
      directory      The directory to be analyzed
      projectName    A short alias name of the anayzed source code project
  -d, --dir=<dirs>   other directory need to analysis.
  -h, --help         display help for command
  -p, --program_environment=<program_environment>
                     the program environment.
  -v, --version      print version information and exit

Examples

Use ENRE to analyze a demo project "electron" written in C++:

java -jar ENRE-CPP.jar  demo-projects/electron electron -p electron/src 

To increase the memory heap, you can add -Xmx before -jar, like:

java -jar -Xmx64g -Xms8g ENRE-CPP.jar  demo-projects/electron electron

Documentation

Specifications on which kinds of entities and relations can be captured and any other details can be found in documents

References