gnuplot unter macOS High Sierra installieren

Titelbild: gnuplot unter macOS High Sierra installieren

Apple hat am 25.09.2017, also zu Beginn dieser Woche, sein neues Betriebssystem veröffentlicht. Einige lieb gewonnene Anwendungen funktionieren seitdem nicht mehr oder wenigstens nicht mehr richtig.  So hat bei mir beispielsweise gnuplot verschiedene Fehlermeldungen gebracht. Ich hatte gnuplot ehedem aus dem Repository von MacPorts installiert. Dummerweise ist MacPorts noch nicht auf macOS High Sierra (10.13) eingestellt. Will man gnuplot unter macOS High Sierra installieren, ohne auf die Aktualisierung von MacPorts, HomeBrew und Co. zu warten, muss man selbst Hand anlegen.

Da ich eh vorhatte, nach einem Clean-Install von macOS High Sierra auf die Einbindung großer Repositories zu verzichten, habe ich mich entschieden, die Sache selbst in die Hand zu nehmen und die benötigte Zusatzsoftware, so sie nicht als passende Binärdistribution verfügbar ist, selbst zu compilieren. Gesagt, getan – in die Hände gespuckt und losgelegt.

Im Folgenden beschreibe ich, wie man gnuplot und macOS High Sierra installieren kann, ohne irgendwelche Repositories einzubinden.  Selbiges habe ich auch mit enscript, automake, autoconf und anderen erfolgreich durchgeführt. Der Weg zum Erfolg ist prinzipiell immer der gleiche.

Grundsätzliches Vorgehen

Bevor man unter macOS Software aus dem Quellcode heraus installieren kann, muss Xcode mit den zugehörigen Kommandozeilenwerkzeugen installiert sein. Xcode ist im App Store kostenlos erhältlich. Die Kommandozeilen-Werkzeuge installiert man dann mit:

$ xcode-select --install

Die Installation von Software aus den Quellen folgt immer dem gleichen Schema:

  1. Quellcode beschaffen
  2. Dokumentation lesen, um den Build-Prozess und dessen Abhängigkeiten kennenzulernen
  3. Abhängigkeiten auflösen
  4. Software compilieren
  5. Software installieren

Den Quellcode zu beschaffen ist der einfachste Schritt. Die Websites von GNU und SourceForge sind in der Regel gute Adressen, um fündig zu werden. Hat man das Objekt der Begierde gefunden, heißt es, das Archiv, in welchem es üblicherweise verpackt ist, auszupacken. Regelmäßig finden wir darin eine Datei, die auf den Namen INSTALL, README oder ähnlich hört. Darin ist der Übersetzungs- und Installationsprozess beschrieben. Oft finden sich darin auch direkt Hinweise zu eventuell bestehenden Abhängigkeiten, wie beispielsweise erforderlichen Bibliotheken. Fehlen solche Hinweise, bestehen aber dennoch Abhängigkeiten, so erfahren wir diese spätestens beim Compilieren. Wir bekommen dann nämlich entsprechende Warn- oder gar Fehlermeldungen. In solchen Fällen gilt es, die angemahnte Software zu beschaffen und nach dem hier beschriebenen Schema zu installieren. Haben wir es nach endlich langer Zeit geschafft, die von uns begehrte Software erfolgreich zu übersetzen, geht es an die Installation. Ist auch diese erfolgreich abgeschlossen, können wir das Objekt der Begierde nutzen.

Die folgende Beschreibung ist analog für die meisten anderen Software-Installationen anwendbar.

gnuplot unter macOS High Sierra installieren

Bevor wir gnuplot selbst compilieren können, müssen wir uns als Voraussetzung XQuartz und AquaTerm beschaffen und installieren. Beide sind als DMG-Files verfügbar und entsprechend einfach zu installieren.

gnuplot habe ich mir in der aktuellen Version 5.2.0 bei SourceForge beschafft. Hier ist der Link zum entsprechenden SourceForge-Archiv.

Ich habe mich natürlich, sonst würde ich das hier nicht schreiben, für das tar-Archiv, welches die Quellen enthält, entschieden. Dieses wird nun in einem beliebigen Verzeichnis ausgepackt.

$ tar -xzf gnuplot-5.2.0.tar.gz

Danach geht man in das Verzeichnis und konfiguriert das Programm. Um AquaTerm nutzen zu können, lautet der Befehl:

$ ./configure --with-aquaterm

Kommen dabei keine Fehlermeldungen, kann gnuplot übersetzt werden.

$ make

Ist auch dieser Schritt erfolgreich ausgeführt, folgt die eigentliche Installation. Hierzu werden Administrationsrechte benötigt.

$ sudo make install

Fertig – gnuplot kann jetzt genutzt werden. Damit automatisch AquaTerm genutzt wird, empfiehlt es sich, in der .bash_profile die Variable GNUTERM zu exportieren:

export GNUTERM=aqua

Der folgende Screenshot zeigt gnuplot im Einsatz.

Screenshot von gnuplot unter macOS High Sierra
gnuplot unter macOS High Sierra

Wenn es Probleme gibt

Trotz vermeintlich nahezu gleicher Konfiguration hatte ich Probleme gnuplot auf meinem MacBook Pro zu installieren. ./configure gab die Meldung

aqua terminal (OS X): no

aus. Geholfen hat:

$ sudo ln -s /Library/Frameworks/AquaTerm.framework/Headers /usr/local/include/AquaTerm
$ CFLAGS='-I/usr/local/include' LDFLAGS='-F/Library/Frameworks'

Danach konnte ich die Software normal konfigurieren, übersetzen und installieren.

Wer die eingebaute readline-Bibliothek nutzen möchte, kann den Aufruf von ./configure gerne noch mit der Option

--with-readline=builtin

ergänzen.

Fazit

Auf die oben beschriebene Weise habe ich mir noch andere Tools auf meinen Rechner installiert. Zugegeben, bei einigen war der Aufwand etwas größer, weil erst noch andere Dinge installiert sein wollten. Insgesamt war es jedoch nicht schwierig. Und, und das ist für mich das Entscheidende: Ich habe jetzt nur die Software installiert, die ich benötige und nutze. Ich habe mir nicht die Modifikationen und sonstigen Dinge eingehandelt, die mit der Einbindung von großen Repositories einhergehen. MacPorts & Co. sind tolle Projekte, es geht aber auch ohne. Eine eigene Installation ist schlanker und last but not least: So weiß man, was man hat, was man auf seinem Rechner bewusst installiert hat.

Karsten Brodmann

Kommentar zu “gnuplot unter macOS High Sierra installieren”

      1. Okay.. klassischer „fast 2 Uhr“-Moment: hast Du eine Ahnung wie ich gnuplot jetzt noch dazu bringe mit PDF-Dateien auszugeben?
        Vielen Dank schonmal im Voraus.

        1. Hi Marvin,
          das ist nun etwas komplizierter. Da musst Du noch einen ganzen Satz weiterer Bibliotheken installieren. ./configure gibt Dir bei dessen Ausführung aus, was für welches Feature benötigt wird.

          Ein einfacher Workaround ist folgender:

          1. Ein Shell-Skript dieser o.ä. Form:
          #!/bin/bash
          bn=`basename $1 .plot`
          gnuplot $bn.plot
          epstopdf temp.ps
          pdfcrop temp.pdf
          mv temp-crop.pdf $bn.pdf
          rm temp.ps temp.pdf

          2. Ein Plot-File, z.B.:
          set term postscript eps enhanced color
          set output „temp.ps“
          plot sin(x)

          Das kannst Du dann, wenn Dein Shell-Skript pdfgplot heißen sollte, mit:

          $ pdfgplot plotdateiname.plot

          aufrufen. Schon hast Du ein PDF. pdfcrop ist bei mir mit MacTeX auf den Rechner gekommen. Damit werden überflüssige Ränder abgeschnitten.

          Ich benutze gnuplot nicht so häufig. Mir reicht dessen Grundausstattung. Willst Du mehr, musst Du mehr installieren. – Das ist der Spagat zwischen selbst kompilieren und fertige Distris verwenden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Cookie-Einstellungen

Bitte treffen Sie eine Auswahl. Weitere Informationen zu den Auswirkungen Ihrer Auswahl finden Sie unter: Datenschutzerklärung

Wählen Sie eine Option, um fortzufahren

Ihre Auswahl wurde gespeichert!

Hilfe

Hilfe

Zum Fortfahren, müssen Sie eine Cookie-Auswahl treffen. Unten finden Sie eine Erklärung der verschiedenen Optionen.

  • Alle Cookies akzeptieren:
    Alle Cookies, wie auch Tracking usw.
  • Nur First Party Cookies:
    Nur Cookies von dieser Website.
  • Alle Cookies ablehnen:
    Keine Cookies mit Ausnahme der technisch notwendigen.

Sie können Ihre Cookie-Einstellungen jederzeit hier ändern: Datenschutzerklärung.

Zurück