Install Pterobacter
Build from the private source if you have repository access. Distribution is on hold during repository review; no public binary, crates.io package, Bioconda package or Homebrew formula is currently offered.
Linux source build
Install Rust and GNU C++ with C++17 support, then obtain the source:
git clone git@github.com:mbhall88/pterobacter.git
cd pterobacter
cargo install --path . --locked
ptero --version
pterobacter --version
Both installed names run the same program. Use pterobacter if another installed tool already uses ptero. Cargo’s installation directory must be on your PATH. It is usually ~/.cargo/bin.
To build without installing, use:
cargo build --release --locked
./target/release/ptero --version
For a debug build, use cargo build --locked and ./target/debug/ptero. These local paths apply to cargo build; cargo install makes the commands available through Cargo’s bin directory.
The measured Linux build used Rust 1.95.0 and GCC 11.5.0 on x86_64 Red Hat Enterprise Linux 9.8. The binary links system C/C++ libraries; the inspected build requires glibc symbols through 2.34. These describe the tested build, not a minimum Rust version or compatibility guarantee for every Linux system. The source includes Rust and embedded C/C++.
macOS source build
Install the Xcode command-line tools and Homebrew GNU GCC. Native builds discover installed Homebrew GNU C++ automatically; an explicit Apple clang override is refused by the pinned native build:
xcode-select --install # skip if already installed
brew install gcc
cargo install --path . --locked
Discovery checks the installed gcc prefix and supports Apple Silicon and Intel Homebrew locations. Explicit compiler overrides retain cc-rs precedence; empty or whitespace-only values fail with a variable-specific error. Unset the variable to request discovery. Keep the compiler’s GNU C++ runtime available. macOS CI build/test smoke and the fixed scientific parity panel on an Apple Silicon Mac have passed. Linux ARM and Windows are untested. The native build currently targets Linux and macOS.
Build offline
First provision Rust, GNU C++, the source and its locked Cargo dependencies through a cache or vendor directory. From that provisioned source tree:
CARGO_NET_OFFLINE=true cargo install --path . --locked --offline
An uncached machine still needs to obtain those prerequisites. At runtime the program embeds skani, MUMmer4 and the MLST matcher; no external analysis executable is required.
Next: reference data
Classification needs reference data separately from the executable. Run ptero database install 2026-10-15, then follow database setup and run an assembly. The current source version is 0.0.0; retain the supplied source commit and binary identity with your analysis record.
For test commands and the optional development binary, see Contributing. Release preparation records the checked platforms and publication steps.
Planned release downloads
Release preparation now builds a Cargo package and precompiled Linux x86_64 and Apple Silicon macOS archives. They are not published yet; use the source installation above until the first approved release. The Linux binaries use glibc and the GNU C++ runtime. The macOS binaries require Homebrew GCC and XZ runtime libraries, available with brew install gcc xz. Each archive records its actual runtime-library requirements and includes licences and checksums. Complete corresponding source is supplied separately beside the binaries.
Docker
A minimal Docker image can be built from source. See containers for database and assembly mounts. GHCR publication is prepared for the first approved release.