Diese Seite listet bemerkenswerte Tools und Systeme zur Automatisierung des Software-Build-Prozesses auf .
Sequenzierung
Diese Tools sequenzieren Build-Operationen, oft basierend auf Abhängigkeiten, und führen dabei manchmal Aufgaben parallel aus.
- Apache Ant – Java-Build-Tool; verwendet das XML- Format für Konfigurationsdateien
- Apache Maven – Softwaretool zur Verwaltung von Build-Abhängigkeiten
- ASDF
- Bazel – Softwaretool zur Automatisierung von Software-Builds und -Tests
- BitBake – Ein Build-Automatisierungstool, das häufig zum Erstellen von Linux-Distributionen verwendet wird; geschrieben in Python.
- Boot ; geschrieben in Clojure
- Boost boost.build – Für C++- Projekte, plattformübergreifend, basierend auf Perforce Jam
- Buck – Ein von Meta Platforms entwickeltes und genutztes Build-System; geschrieben in Rust , unter Verwendung von Starlark (BUILD-Dateisyntax) als Bazel.
- Buildout ; Python-basiert
- Kabale
- Cargo – Der Rust-Paketmanager und Build-Tool
- D Dub – Offizieller Paket- und Build-Manager der D-Sprache
- Flowtracer – Build-Management-Tool
- Gradle – Kostenloses Tool zur Automatisierung von Software-Builds mit einer auf Groovy und Kotlin basierenden domänenspezifischen Sprache (DSL), das Funktionen von Ant und Maven mit weiteren Funktionen wie einem zuverlässigen inkrementellen Build kombiniert.
- Grunt – JavaScript-Build-Tool
- Gulp – Serverseitiges JavaScript-Build-Tool
- IncrediBuild – Grid-Computing-Software
- Leiningen – Build-Automatisierungstool; für Clojure -Projekte
- Make – Software-Build-Automatisierungstool; eines der ersten Build-Automatisierungstools; viele Varianten
- Mix – Build-Automatisierungssoftware für Elixir
- MSBuild – Software zur Build-Automatisierung; von Microsoft
- NAnt – Kostenloses und quelloffenes Softwaretool; basiert auf Ant
- Ninja – Kostenlose Software zur Build-Automatisierung
- Perforce Jam – Build-Tool von Perforce , inspiriert von Make
- Qt Build-System
- Rake – Ein Make-ähnliches Tool, geschrieben in Ruby
- sbt – Open-Source-Build-Tool für Scala- und Java-Projekte
- SCons – Softwareentwicklungstool; Python-basiert
- Stack – Haskell-Entwicklungstool
- Waf ; Python-basiert
Meta-Build
Diese sogenannten Meta-Build- Tools generieren Konfigurationsdateien für andere Build-Tools, wie beispielsweise die oben genannten.
- CMake – Plattformübergreifendes Build-Tool zur Konfiguration plattformspezifischer Builds; sehr beliebt und in integrierte Entwicklungsumgebungen (IDEs) wie Qt Creator , [ 1 ] KDevelop und GNOME Builder [ 2 ] integriert.
- GNU-Buildsystem (auch bekannt als Autotools) – Software-Build-Toolset von GNU
- GYP (Generate Your Projects) – Ein von Google entwickeltes Tool zur Build-Automatisierung; wurde durch GN ersetzt, das Dateien für Ninja und andere Tools generiert.
- Ich mache
- OpenMake Software Meister
- Meson – Build-Automatisierungstool; integriert in GNOME Builder [ 2 ]
- Premake – Plattformübergreifendes Build-Tool zur Konfiguration plattformspezifischer Builds; geschrieben in Lua
- qmake – Objektorientiertes Framework für die Softwareentwicklung
Kontinuierliche Integration
Continuous-Integration -Systeme automatisieren Build-Vorgänge auf einem relativ hohen Niveau durch Funktionen wie: Planung und Auslösung von Builds, Speicherung von Build-Protokoll- und Ausgabedateien sowie Integration mit Versionskontrollsystemen .
- AnthillPro – Server für kontinuierliche Integration
- Apache Continuum – Server für kontinuierliche Integration zum Erstellen von Java-basierten Projekten; eingestellt
- Bitbucket Pipelines und Deployments – Kontinuierliche Integration für in Bitbucket gehostete Repositories [ 3 ]
- Buildbot – Framework für kontinuierliche Integrationstests
- CruiseControl – Software-Framework für kontinuierliche Builds
- Setzen Sie auf kontinuierliche Bereitstellung – Open Source, plattformübergreifend
- GitLab Runner – Kontinuierliche Integration
- GitHub Actions – Kostenloser Continuous-Integration-Service für Open-Source-Projekte
- Hudson – Tool für kontinuierliche Integration
- Jenkins – Open-Source-Automatisierungsserver; Hudson- Fork
- Spinnaker – Open-Source-Multi-Cloud-Continuous-Delivery-Service von Netflix und Google
- TeamCity – Build-Management- und Continuous-Integration-Server
- Travis CI – Dienst zum Erstellen und Testen von Softwareprojekten
Andere
- BuildStream Ein flexibles, erweiterbares Framework, geschrieben in Python , zur Modellierung von Build- und CI-Pipelines unter Verwendung eines deklarativen YAML- Formats.
- checkinstall – Computerprogramm für Unix-ähnliche Betriebssysteme
- Open Build Service – Entwicklungsplattform für Linux-Distributionen
Lizenzierung
Siehe auch
- Vergleich der Software für kontinuierliche Integration
- Liste der Softwarepaketverwaltungssysteme
- Liste der Versionskontrollsoftware
- Make-Varianten – Werkzeuge, die auf Unix Make basieren oder diesem sehr ähnlich sind.
- Softwarekonfigurationsmanagement – Nachverfolgung und Steuerung von Softwareänderungen
Referenzen
- ^ „CMake einrichten – Qt Creator Handbuch“ . doc.qt.io .
- ^ a b „GNOME Builder Entwicklungsumgebung erhält viele neue Funktionen für GNOME 3.28 - Phoronix“ . www.phoronix.com .
- ^ https://confluence.atlassian.com/bitbucket/build-test-and-deploy-with-pipelines-792496469.html Plattformübergreifend