Docker: RHEL8 – Entwicklungshilfe

Großartiges Geschenk der Firma RedHat für Entwickler.

Das neue RedHat Enterprise Linux 8 ist für Entwickler kostenfrei nutzbar. Die Entwicklungen haben wir bisher nur mit Debian und SuSe Distributionen durchgeführt.

Ohne Registrierung und in weniger als 5 Minuten einsatzbereit:
docker run –rm -it registry.access.redhat.com/ubi8/ubi

RHEL8 im Docker Container

Bis Ende 2019 haben wir noch reichlich Entwicklungsarbeit für HALSYSTEM vor uns und berichten dann über die Erfahrungen mit RHEL8 und SLES12.

COBOL: Shared Library

Compilierung von OpenCobol verläuft nicht in jeder Distribution problemlos. Ich nutze derzeit Fedora 29 (RedHat) und musste etwas nach der Lösung suchen.

Nach dem Download der Source von OpenCobol und dem Nachladen notwendiger Development Librarys, funktioniert die mitgelieferte MAKE Konfiguration ganz passabel.

./configure, make, make check, make test und make install laufen meisst fehlerfrei durch. Trotzdem erhält man nach dem ersten kompilieren und dem Start seiner Anwendung den Fehler „error while loading shared libraries: libcob.so.4“ o.ä.

Das liegt an fehlender Path Bekanntgabe. Im Verzeichnis /etc/ld.so.conf.d werden die Pfade zu diversen Libraries bekannt gegeben. In der MAKE Konfiguration ist vorgesehen, die Programm Bibliotheken im Verzeichniss /usr/local/lib abzulegen. Damit sie auch gefunden werden, ist also eine .conf anzulegen mit dem Pfad als Inhalt. Nach einem ldconfig ist der Pfad bekannt und cobc sowie das kompilierte Programm funktionieren einwandfrei.

Das Verhalten unterscheidet sich unter den Distributionen (Debian, RedHat, SuSe) und sogar von Release zu Release.