Buildnummer

From Wikiup

Eine Buildnummer oder Build-Nummer ist eine oft automatisch[1] bei einem Build-Prozess vergebene fortlaufende Nummer, die oft Teil der Versionsnummer einer Software ist. Bei manchen Softwareprodukten ist zusätzlich auch das Datum oder sogar die genaue Uhrzeit des Builds angeführt. Bei großen Softwareprojekten ist die Buildnummer oft noch weiter unterteilt, z. B. in Build-Revisionsnummern.

Relevanz

Die Buildnummer ändert sich meist nur bei kleineren Veränderungen an einer Software, beispielsweise nach dem Einspielen von Softwareaktualisierungen. Um herauszufinden, ob tatsächlich die aktuelle Version einer Software eingesetzt wird, führt meist kein Weg an den Sub-Versionsnummern vorbei. Die Buildnummer ist häufig eine der kleinsten Unterteilungen von Softwareaktualisierungen, da sie sich am Build-Prozess orientiert.

Beispiele

Beim Betriebssystem Windows von Microsoft ist die Buildnummer noch weiter in eine Revisionsnummer (englisch Revision Number) unterteilt. Die vollständige Versionsnummer lässt sich dabei aus dem Registrierungsschlüssel BuildLabEx unter HKEY_LOCAL_MACHINE\​Software\​Microsoft\​Windows NT\​CurrentVersion auslesen. Einfacher ist es allerdings, die Buildnummer über die Systemsteuerung oder über das Programm winver.exe anzeigen zu lassen, beispielsweise Windows 10 1903 (Build 18875.1000) für eine Insider-Preview von Windows 10 1903.[2]

Unter Linux wird die Buildnummer mit vorangestellter Raute, #, u. a. mit dem Systemprogramm uname ausgegeben. Beispiel (Debian 10 „Buster“):

max@MeinRechner:~$ uname -a
Linux MeinRechner 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5+deb10u2 (2019-08-08) x86_64 GNU/Linux
                  │  │ │ │  │     │            │  │  │      │          │
                  │  │ │ │  │     │            │  │  │      │          └── Builddatum
                  │  │ │ │  │     │            │  │  │      │
                  │  │ │ │  │     │            │  │  │      └── Paketnummer: 5+deb10u2
                  │  │ │ │  │     │            │  │  │
                  │  │ │ │  │     │            │  │  └──         / Revisionsnummer     \
                  │  │ │ │  │     │            │  └───── Kernel-   Nebenversionsnummer   4.19.37
                  │  │ │ │  │     │            └────────         \ Hauptversionsnummer /
                  │  │ │ │  │     │
                  │  │ │ │  │     └── Buildnummer
                  │  │ │ │  │
                  │  │ │ │  └────── Architektur bzw. Plattform
                  │  │ │ │
                  │  │ │ └── Paketrevisionsnummer: 5
                  │  │ └────        / Basis-Revisionsnummer  \
                  │  └────── Paket-   Nebenversionsnummer      4.19.0 ist die Basisversion des Kernels
                  └─────────        \ Hauptversionsnummer    /

Da der Linux-Kernel bei einigen Linux-Distributionen auch vom Benutzer selbst kompiliert werden kann, ist die Buildnummer ein Indiz für eine veränderte Kernel-Konfiguration, die z. B. mit make menuconfig verwaltet werden kann. Bei einem erneuten Übersetzen des Kernels erhält dieser dann eine neue Buildnummer und ist somit unterscheidbar. Diese Funktion ist von der versteckten Datei .version abhängig, die die aktuelle Buildnummer als Textdatei zwischenspeichert. Der Aufruf make mrproper löscht alle durch den Build-Prozess erstellten Dateien in den Kernelquellen und indem dabei auch diese Textdatei gelöscht wird, wird auch der Zähler für die Buildnummer zurückgesetzt. Mit make clean bleibt sie, und somit der Zähler für die Buildnummer, erhalten.

Siehe auch

Einzelnachweise

  1. Mitch Frazier: Add an Auto-Incrementing Build-Number to Your Build Process. Linux Journal, 8. Juni 2008, abgerufen am 17. August 2019 (englisch).
  2. Markus Kasanmascheff: Windows 10: So lasst ihr euch Version, Build-Nummer und Edition anzeigen. netzwelt.de, 1. Mai 2019, abgerufen am 17. August 2019.