forked from HavocFramework/Havoc
-
Notifications
You must be signed in to change notification settings - Fork 1
Building From Source
user edited this page Sep 21, 2026
·
3 revisions
Havoc has two components: the teamserver (Go) and the client (C++/Qt5). Both are built from the repository root with make.
git clone https://github.com/CyberAZE-community/Havoc.git
cd Havocsudo apt install -y git build-essential cmake golang-go nasm mingw-w64 \
qtbase5-dev qtbase5-dev-tools qtchooser qt5-qmake libqt5websockets5 libqt5websockets5-dev \
qtdeclarative5-dev python3-dev libboost-all-dev libspdlog-dev libfontconfig1 \
libglu1-mesa-dev mesa-common-devsudo pacman -S git gcc base-devel cmake make go nasm mingw-w64-gcc \
qt5-base qt5-websockets python3 boost spdlog fontconfig glu mesaYou must have
homebrewinstalled.
brew install --cask cmake
brew install python qt@5 spdlog golang
brew link --overwrite qt@5make ts-buildThis builds the teamserver binary as ./havoc in the repository root.
make client-buildThis initializes the git submodules, builds the client with CMake, and clones the CyberAZE-community/Modules repo (branch dev) into client/Modules/. The client binary is written to client/Havoc.
On macOS use make client-build-mac instead.
# Start the teamserver
./havoc server --profile ./profiles/havoc.yaotl -v
# Start the client (in another terminal)
./havoc clientAll files created during interaction with the teamserver are stored in the data/ folder.
-
fatal error: Python.h: No such file or directorywhen building the client → install the Python development headers (python3-devon Debian/Ubuntu). Any recent Python 3 works. -
Implant/payload compilation fails at runtime → usually a missing or broken MinGW toolchain. Verify
mingw-w64andnasmare installed and that the compiler paths in theTeamserver.Buildsection of your profile are correct. -
CMake fails to find
nlohmann/json.hpp→ the git submodules aren't checked out; rungit submodule update --init --recursive(done automatically bymake client-build).
A Docker build for the teamserver is also available:
docker build -f teamserver/Teamserver-Dockerfile .