Build (englisch für „bauen") ist in der Softwareentwicklung der Prozess, aus Quellcode ein lauffähiges Programm oder ein auslieferbares Artefakt zu erzeugen. Dazu gehören das Übersetzen durch einen Compiler, das Binden von Bibliotheken, das Sammeln von Ressourcen, das Ausführen von Tests und das Paketieren für die Auslieferung.
Was passiert bei einem Build?
- Kompilieren: Quellcode wird in Maschinencode oder Zwischencode übersetzt.
- Linken: Übersetzte Module und Bibliotheken werden zu einem Programm verbunden.
- Tests: Automatisierte Tests laufen im Build mit und stoppen ihn bei Fehlern.
- Paketieren: Das Ergebnis wird als Artefakt verpackt — z.B. als Docker-Image, JAR-Datei oder Installationspaket.
Build-Tools im Überblick
- Make und CMake: Klassiker für C und C++
- Maven und Gradle: Standard für Java
- npm build / Webpack / Vite: Frontend- und JavaScript-Projekte
- pip / setuptools: Python-Pakete bauen
- Docker Build: Container-Images aus einem Dockerfile erzeugen
Build in CI/CD-Pipelines
In modernen Teams läuft der Build automatisch bei jedem Commit: Eine CI/CD-Pipeline baut die Software, führt Tests aus und stellt das Artefakt bereit. So wird Automatisierung zum Standard, und Fehler fallen früh auf. Wer die Infrastruktur dafür als Code verwaltet (Infrastructure as Code), kann Builds reproduzierbar in beliebigen Umgebungen erzeugen.
Reproduzierbare Builds
Ein guter Build ist reproduzierbar: gleicher Quellcode ergibt immer dasselbe Ergebnis. Dafür sorgen versionierte Abhängigkeiten (z.B. über Git und Lockfiles) und saubere Build-Umgebungen. Auslieferungen erfolgen dann kontrolliert, z.B. per Canary-Deployment oder Blue-Green-Deployment, statt wild auf dem Produktivserver zu kompilieren.
Verwandte Grundlagen: Compiler, Testing, Debugging, CI/CD, Pipeline, Automatisierung.