Skip to main content

SDK Directory Layout

The PARA SDK is distributed as a standard Unix-style tree. After extraction, the top-level directory (hereafter $PARA_SDK) is organized as follows.

$PARA_SDK/
├─ VERSION # Release/version/target string
├─ LICENSE # License (PopcornSAR proprietary)
├─ para-env-setup.sh # Environment setup script (use by sourcing)
├─ bin/ # Runtime daemons and developer tools (EM, CM, para-tui, para-bench ...)
├─ lib/ # Functional Cluster shared libraries (libpara_*.so) + CMake packages
│ └─ cmake/ # find_package(para-*) config packages
├─ include/ # Public headers
│ ├─ ara/ # Standard AUTOSAR AP API (ara::*)
│ ├─ para/ # PARA extension API (para::*)
│ ├─ apext/ # AP extension headers
│ └─ para_base_ffi.h # Base-layer FFI boundary
├─ etc/ # Runtime configuration (ships with dlt/; manifests are added as apps are deployed)
├─ opt/ # Deployed applications (each app = bin/ + etc/; initially empty)
├─ share/ # Examples and CMake modules
│ ├─ examples/ # Step-by-step example scripts + complete example Machine + playground
│ └─ cmake/ # PARA CMake modules (Modules/PARA/Para.cmake)
├─ external/ # Bundled third-party (DLT daemon, pkg-config, etc.)
└─ var/ # Runtime data directory (initially empty)

Summary of Key Directory Roles

DirectoryEnvironment VariableRole
$PARA_SDKPARA_SDK, PARA_CORESDK root / runtime core root
etc/PARA_CONFMachine, execution, communication, and logging manifests
var/PARA_DATARuntime mutable data
opt/PARA_APPLDeployed applications (per-app bin/+etc/)
bin/$PARA_CORE/binDaemon and tool executables
lib/, external/lib/(runtime link path)Shared libraries

You do not set these variables directly; the environment setup script picks them up automatically.