Protokolle von Gnuplot für den Start?

312
Léo Léopold Hertz 준영

Ich habe jetzt viele Male verschiedene gnuplots deinstalliert und installiert. Nun stürzt der gnuplot mit qt jedoch beim Start ab, wenn ich einfach laufe

gnuplot -e "plot 'data.dat'" 

Der Absturz tritt so auf, dass das qt-Fenster kurz nach dem Befehl geöffnet wird, aber in etwa 0,01 Sekunden abstürzt, sodass ich nur ein Blinzeln des Fensters sehen kann. Mein System ist OSX Yosemite und ich habe die Installationen mit Brew gemacht.

Ich habe es viele Male deinstalliert und neu installiert, aber das Problem bleibt bestehen. Ich habe mein System aktualisiert. Mein .gnuplotrc ist leer.

Wie können Sie Protokolle über die Interna von gnuplot erhalten? Ich möchte sehen, was schief läuft.

1
Ich nehme an, dass es nicht wirklich abstürzt, aber Sie haben nur einen schnellen Computer. Versuchen Sie, die Option "-persist" hinzuzufügen. So etwas wie "gnuplot -e" plot "data.dat" "-persist". Es ist möglich, dass Sie die Option Persist in Ihrer vorherigen Installation aktiviert hatten. Hastur vor 9 Jahren 1

1 Antwort auf die Frage

1
Hastur

Vor allem müssen Sie sicher sein, dass gnuplotdas abstürzt. Führen Sie dazu einfach Ihren Befehl aus und fragen Sie nach der Shell den Exit-Code mitecho $?

gnuplot -e "plot 'data.dat'" echo $? 

  • Wenn es zurückkehrt 0, bedeutet das, dass die Ausführung ohne Fehler beendet wurde. Der -persistParameter kann Ihr Problem beheben.

    gnuplot -persist -e "plot 'data.dat'" 
  • Wenn eine andere Zahl zurückgegeben wird 0, ist sie abgestürzt.
    In diesem Wikibook können Sie einige Tipps lesen:

    Für das Debuggen einer gnuplotDatei ist es oft nützlich:

    • Ändern Sie das Terminal in interaktiv (anstatt in eine Datei auszugeben), indem Sie die Terminal- und Ausgabezeilen auskommentieren.
    • Starten Sie gnuplotinteraktiv und laden Sie dann die betreffende Datei.
    • Setzen Sie pause -1 (pause bis Wagenrücklauf) am Ende der Datei und führen Sie sie von der Befehlszeile aus.
    • Führen Sie alternativ gnuplotdie -persistBefehlszeilenoption aus, wird also beendet gnuplot, das Fenster bleibt jedoch bestehen.
    • Machen Sie die Datei selbst durch eine Shebang-Notation (#!) Ausführbar (abhängig vom genauen Pfad): #!/usr/bin/gnuplot -persist

    Ich kann hinzufügen, dass Sie gnuplotals letzten Parameter mit Bindestrich aufrufen können, um im interaktiven Bereich zu bleiben, wenn das Skript abgeschlossen ist.

    gnuplot filename.gp - ` 

    Dann können Sie beginnen, Ihr Skript zu teilen, bis Sie den Fehler gefunden haben (oder Sie können einige Punktzeilen als print "here I am #1"... print "here I am #n"eingeben, ausführen und das letzte Here I Am # lesen ).

Letzte Notiz:

Es gibt eine debug terminaldavon gnuplot, wenn sie in Ihrer Version aktiviert ist, kann dies beim Debug-Verfahren helfen. Von hier aus kann man darüber lesen

Dieses Terminal dient zum Debuggen von gnuplot. Es ist wahrscheinlich nur für Benutzer von Interesse, die den Quellcode ändern