Skip to main content

OBT (Orkid Build Tool)

OBT Logo

Build environment orchestrator for complex multi-language projects

Python 3.10+ License: BSD-3-Clause Platform: Linux/macOS/WSL2


What is OBT?

OBT manages build environments for complex software projects with extensive dependency trees. Unlike package managers that install system-wide, OBT creates isolated staging environments where all your project dependencies coexist without polluting your system.

Key Features

  • 🔧 100+ Pre-configured Dependencies - Boost, Qt5, OpenCV, LLVM, and more
  • 🎯 Project Composition - Combine multiple projects with --project arguments
  • 🌍 Cross-Platform - Identical commands on Linux, macOS, and WSL2
  • 🏗️ Multi-Language - C++, Python, Rust, JavaScript, and more
  • 📦 Isolated Environments - No system pollution, everything in staging directories
  • 🎨 Extensible - Add custom dependencies and modules per project

Quick Start

# Install OBT
pip3 install ork.build

# Create environment
obt.env.create.py --stagedir ~/.obt-staging

# Launch with projects
obt.env.launch.py --stagedir ~/.obt-staging --numcores 16 \
  --project ~/projects/myproject \
  --project ~/projects/shared

# Build dependencies
obt.dep.build.py boost
obt.dep.build.py opencv

Documentation

Getting Started

Reference

Advanced Topics


Requirements

  • Python 3.10+
  • Virtual environment (PEP-668 compliance)
  • Clean base shell environment (why?)

Platform-Specific

macOS: Xcode, Homebrew
Linux: Build essentials, sudo access
Windows: WSL2 with Ubuntu


Project Composition

Make any project OBT-aware by adding:

myproject/
├── obt.project/
│   ├── obt.manifest          # {"name": "myproject", "autoexec": "scripts/init_env.py"}
│   └── scripts/
│       └── init_env.py       # Environment setup script

Then compose multiple projects:

obt.env.launch.py --project project1 --project project2 --project project3

Philosophy

OBT doesn't replace package managers or build systems - it orchestrates them. When you need a library, you need it. OBT ensures you get it with the right version, in the right place, without breaking anything else.


Support


License

BSD 3-Clause License - See LICENSE and license.rst for details.

Copyright (c) 2010-2024, Michael T. Mayers. All rights reserved.

Metadata

Release files for ork.build 0.0.316

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ork.build 0.0.316
File Size Uploaded
ork_build-0.0.316.tar.gz 630.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ork.build 0.0.316
File Interpreter ABI Platform
ork_build-0.0.316-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / ork_build-0.0.316.tar.gz

Download URL ork_build-0.0.316.tar.gz
Size 630.7 kB
Tags Source
SHA-256 checksum
How to use checksums
08df022a62747dc8fc8f05a4eb23e0a42e112545bf7786b361d74c8fef47d476
BLAKE2b-256 checksum
How to use checksums
dae2badd9109d51ce746ad233b268ab29704e5dab518affea354517a642fd50c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release files / ork_build-0.0.316-py3-none-any.whl

Download URL ork_build-0.0.316-py3-none-any.whl
Size 919.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
11b8c15fc7913f29dff1dd8808db12a1b95e9cf1d9fe76b534a96d42c9a403a4
BLAKE2b-256 checksum
How to use checksums
6ed2ef57e801bb934c0aecc27c133e2bb8fbb0af7b408e380a0ea9a408fda667
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release history Release notifications | RSS feed

This release

0.0.316 This release

2 release files

0.0.99

2 release files

0.0.98

2 release files

0.0.97

2 release files

0.0.96

2 release files

0.0.95

2 release files

0.0.94

2 release files

0.0.93

2 release files

0.0.92

2 release files

0.0.90

2 release files

0.0.89

2 release files

0.0.88

2 release files

0.0.87

2 release files

0.0.86

2 release files

0.0.85

2 release files

0.0.84

2 release files

0.0.83

2 release files

0.0.82

2 release files

0.0.81

2 release files

0.0.80

2 release files

0.0.79

2 release files

0.0.78

2 release files

0.0.77

2 release files

0.0.76

2 release files

0.0.75

2 release files

0.0.74

2 release files

0.0.73

2 release files

0.0.72

2 release files

0.0.71

2 release files

0.0.69

2 release files

0.0.67

2 release files

0.0.66

2 release files

0.0.65

2 release files

0.0.64

2 release files

0.0.63

2 release files

0.0.62

2 release files

0.0.60

2 release files

0.0.59

2 release files

0.0.58

2 release files

0.0.57

2 release files

0.0.56

2 release files

0.0.55

2 release files

0.0.54

2 release files

0.0.53

2 release files

0.0.52

2 release files

0.0.51

2 release files

0.0.50

2 release files

0.0.49

2 release files

0.0.48

2 release files

0.0.47

2 release files

0.0.46

2 release files

0.0.45

2 release files

0.0.44

2 release files

0.0.43

2 release files

0.0.41

2 release files

0.0.40

2 release files

0.0.39

2 release files

0.0.38

2 release files

0.0.37

2 release files

0.0.36

2 release files

0.0.35

2 release files

0.0.34

2 release files

0.0.33

2 release files

0.0.32

2 release files

0.0.31

2 release files

0.0.30

2 release files

0.0.29

2 release files

0.0.28

2 release files

0.0.27

2 release files

0.0.26

2 release files

0.0.25

2 release files

0.0.23

2 release files

0.0.22

2 release files

0.0.21

2 release files

0.0.20

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.16

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page