Anmerkung: Die in `/etc/environment` definierten Umgebungsvariablen gelten systemweit, können aber z.B. durch Einträge in der nutzereigenen Datei `~/.bashrc` überschrieben werden. Eine Kontrolle, um Widersprüche auszuschließen, ist empfehlenswert.
Anmerkung: Dieser Ablauf führt zur Installation der Clojure-Skripte
und -Bibliotheken (siehe [»Install Clojure«](https://clojure.org/guides/install_clojure)):
```
/usr/local/bin/clj
/usr/local/bin/clojure
/usr/local/lib/clojure
```
## Kompilieren der jar-Dateien für die Messprogramme »devhub«, »devproxy« und »metis«
### Angaben zum Proxy-Server
Der spätere Build-Prozess benutzt nicht oder nicht immer die übliche Umgebungsvariable `https_proxy` beim Herunterladen externer Dateien unter Verwendung des Proxy-Servers. Um trotzdem erfolgreich zu sein, muss zusätzlich die folgende Konfigurationsdatei angelegt werden und die Angaben zum Proxy-Server enthalten:
Anmerkung: Mithilfe der Konstrukte `$(printf %s '????????'|jq -Rr @uri)` werden Nutzername und Password URL-encoded zu Bestandteilen der jeweiligen URL (siehe resultierender Eintrag in `.git/config`). Damit erübrigt sich jetzt und später deren manuelle Eingabe.
Installation einer für »devhub« benötigten Java-Bibliothek:
```
git clone https://github.com/mikef5410/jvxi11.git
cd jvxi11
ant
# Der Fehler beim Erzeugen der Dokumentation wegen fehlendem Programm
Anmerkung: Es ist nicht ausgeschlossen, dass sich die Erzeugung dieser Bibliothek auch automatisieren ließe, wenn man die Angaben in `devhub/deps.edn` geeignet anpassen könnte/würde.
### Erzeugen der jar-Dateien für die Messprogramme
```
cd devhub
git pull
./make_jar
cd ..
cd devproxy
git pull
./make_jar
cd ..
cd metis
git pull
./make_jar
```
Die gewünschten jar-Dateien befinden sich nach erfolgreichem Kompilieren jeweils im Verzeichnis `target/`.
# Clojure-Installation und Kompilieren der Messprogramme
## Vorbereitung
Die folgenden Schritte sind als Vorbereitung des Kompilierens und zur Ausführung der Messprogramme notwendig.
### Notwendige System-Pakete
```
sudo apt install default-jre curl rlwrap ant jq
```
### Umgebungsvariablen
In der Datei `/etc/environment` müssen, ggf. abhängig von der Kalibriereinrichtung, folgende Umgebungsvariablen definiert werden:
Anmerkung: Die in `/etc/environment` definierten Umgebungsvariablen gelten systemweit, können aber z.B. durch Einträge in der nutzereigenen Datei `~/.bashrc` überschrieben werden. Eine Kontrolle, um Widersprüche auszuschließen, ist empfehlenswert.
Anmerkung: Dieser Ablauf führt zur Installation der Clojure-Skripte
und -Bibliotheken (siehe [»Install Clojure«](https://clojure.org/guides/install_clojure)):
```
/usr/local/bin/clj
/usr/local/bin/clojure
/usr/local/lib/clojure
```
## Kompilieren der jar-Dateien für die Messprogramme »devhub«, »devproxy« und »metis«
### Angaben zum Proxy-Server
Der spätere Build-Prozess benutzt nicht oder nicht immer die übliche Umgebungsvariable `https_proxy` beim Herunterladen externer Dateien unter Verwendung des Proxy-Servers. Um trotzdem erfolgreich zu sein, muss zusätzlich die folgende Konfigurationsdatei angelegt werden und die Angaben zum Proxy-Server enthalten:
Anmerkung: Mithilfe der Konstrukte `$(printf %s '????????'|jq -Rr @uri)` werden Nutzername und Password URL-encoded zu Bestandteilen der jeweiligen URL (siehe resultierender Eintrag in `.git/config`). Damit erübrigt sich jetzt und später deren manuelle Eingabe.
Installation einer für »devhub« benötigten Java-Bibliothek:
```
git clone https://github.com/mikef5410/jvxi11.git
cd jvxi11
ant
# Der Fehler beim Erzeugen der Dokumentation wegen fehlendem Programm
Anmerkung: Es ist nicht ausgeschlossen, dass sich die Erzeugung dieser Bibliothek auch automatisieren ließe, wenn man die Angaben in `devhub/deps.edn` geeignet anpassen könnte/würde.
### Erzeugen der jar-Dateien für die Messprogramme
```
cd devhub
git pull
./make_jar
cd ../devproxy
git pull
./make_jar
cd ../metis
git pull
./make_jar
```
Die gewünschten jar-Dateien befinden sich nach erfolgreichem Kompilieren jeweils im Verzeichnis `target/`.