Gtk-ERROR **: 04:28:17.451: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported
Vor kurzem habe ich eine neue Xavier NX-Umgebung vorbereitet, und als ich versuchte, das in der Vergangenheit verwendete Programm auszuführen, trat ein solcher Fehler auf, sodass ich mich damit befasste. Normalerweise löse ich diese Fehler auf einfache Weise, aber manchmal möchte ich sie in einem Klumpen lösen (auch als Memo für diejenigen, die auf ähnliche Fehler stoßen).
Die Ursache scheint die gleichzeitige Verwendung von umgebungsabhängigen GTX + 2- und 3-Bibliotheken zu sein. Jetzt müssen wir herausfinden, welche Bibliotheken in Konflikt stehen.
https://github.com/yosinski/deep-visualization-toolbox/issues/10
Demnach kann es einen Konflikt zwischen matplotlibc und opencv geben. Versuchen Sie, den folgenden Code auszuführen.
import cv2
import matplotlib.pyplot as plt
cv2.namedWindow("test")
Bingo. Ich konnte den gleichen Fehler wie zuvor bestätigen.
Ich werde die Version von GTX angeben, die verwendet werden soll, indem ich die Frame-Einstellungsdatei von matplotlib bearbeite. Die von matplotlib zu bearbeitenden Dateien können durch Ausführen des folgenden Programms gefunden werden.
python3
import matplotlib
print (matplotlib.matplotlib_fname())#/usr/bin/python3/~~(Kürzung)Wird ausgegeben
Kommentieren Sie die 40. Zeile der Datei aus und geben Sie tkAgg an.
Führen Sie nun das zur Überprüfung verwendete Programm erneut aus. Dann tritt der folgende Fehler auf.
Anscheinend konnte der Teil, den ich dieses Mal zu lösen versuchte, sicher gelöst werden. Sie müssen diesen Fehler nur beheben. Installieren Sie die Bibliothek mit dem folgenden Code.
sudo apt-get install tk-dev
Als ich es erneut ausführte, wurde ein anderer Fehler angezeigt.
Installieren Sie diesmal Folgendes
sudo apt-get install libcanberra-gtk-module
Als ich das Überprüfungsprogramm ausführte, konnte ich es ohne Probleme ausführen. Ich konnte bestätigen, dass das Programm problemlos funktioniert.
Ich dachte, es wäre schön, auf das Verfahren zurückblicken zu können, indem man den Prozess der Fehlerbehebung in einem Artikel zusammenfasst.
Recommended Posts