0

ich eine einfache gui mit einem Bild erschaffe Tkinter verwenden und die folgende gibt mir einen Segmentierungsfehler:tkinter Bild segfault

from Tkinter import* 
from PIL import ImageTk, Image 
import os 

window=Tk(); 
window.geometry("500x500") 
testimg="Argentina.png" 

img=ImageTk.PhotoImage(Image.open(testimg)) 

Von Surfen andere answers für dieses Problem habe ich herausgefunden, dass das Problem ist, dass PIL greift auf Frameworks von/System/Libraries/Frameworks anstelle von/Libraries/Frameworks zu. Ich bin mir nicht sicher, wie ich dieses Problem beheben kann. Ich bin auf OSX, wenn das relevant ist.

+0

Ich habe das getan. Ich habe sowohl Tk.framework als auch Tcl.framework in/System/Libraries/Frameworks umbenannt und den Segfault beseitigt. Aber dann konnte PIL die richtigen Verzeichnisse nicht finden, seit sie umbenannt wurden. Ich weiß nicht, wie ich PIL in die/Libraries/Frameworks-Ordner umlenke (und warum sie umbenannt werden sollten, sollte überhaupt etwas tun). – gdavtor

+0

Ich habe auch irgendwo gelesen, dass install_name_tool kann dazu verwendet werden, aber die man-Seite war nicht sehr hilfreich und ich konnte keine nützlichen Beispiele finden, wie dies funktionieren könnte – gdavtor

Antwort

0

Teilauflösung in this GitHub-Thread. Das Problem rührt von Frameworks-Verzeichnissen her, die durch Anaconda falsch verbunden sind. Derzeit nicht lösbar, aber Anaconda-Entwickler sind sich des Problems bewusst.