Ich hatte einigen Python 2.7-Code, die Kivy installiert ist und läuft perfekt auf einem Raspberry Pi verwendet, aber es stürzt auf dem BeagleBone Schwarz Rev C. Die Code-Importe:Ärger mit Python-Paket Kivy auf BeagleBone
from kivy import app
from kivy import clock
from kivy.uix import anchorlayout
from kivy.uix import label
from kivy.core import window
I starte Python 2.7 auf BeagleBone Black Rev C mit Debian Jessie. Kivy Version 1.9.1. Hier ist der Fehler:
[INFO ] [Logger ] Record log in /root/.kivy/logs/kivy_16-04-01_6.txt
[INFO ] [Kivy ] v1.9.1
[INFO ] [Python ] v2.7.9 (default, Mar 1 2015, 13:48:22)
[GCC 4.9.2]
[INFO ] [Factory ] 179 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_gif, img_sdl2, img_pil (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [OSC ] using <multiprocessing> for socket
[INFO ] [Window ] Provider: sdl2(['window_egl_rpi'] ignored)
error: XDG_RUNTIME_DIR not set in the environment.
[CRITICAL] [Window ] Unable to find any valuable Window provider at all!
egl_rpi - ImportError: cannot import name bcm
File "/usr/lib/python2.7/dist-packages/kivy/core/__init__.py", line 59, in core_select_lib
fromlist=[modulename], level=0)
File "/usr/lib/python2.7/dist-packages/kivy/core/window/window_egl_rpi.py", line 12, in <module>
from kivy.lib.vidcore_lite import bcm, egl
sdl2 - RuntimeError: No available video device
File "/usr/lib/python2.7/dist-packages/kivy/core/__init__.py", line 67, in core_select_lib
cls = cls()
File "/usr/lib/python2.7/dist-packages/kivy/core/window/window_sdl2.py", line 138, in __init__
super(WindowSDL, self).__init__()
File "/usr/lib/python2.7/dist-packages/kivy/core/window/__init__.py", line 722, in __init__
self.create_window()
File "/usr/lib/python2.7/dist-packages/kivy/core/window/window_sdl2.py", line 237, in create_window
self.fullscreen, resizable, state)
File "_window_sdl2.pyx", line 80, in kivy.core.window._window_sdl2._WindowSDL2Storage.setup_window (kivy/core/window/_window_sdl2.c:1810)
File "_window_sdl2.pyx", line 55, in kivy.core.window._window_sdl2._WindowSDL2Storage.die (kivy/core/window/_window_sdl2.c:1460)
x11 - ImportError: No module named window_x11
File "/usr/lib/python2.7/dist-packages/kivy/core/__init__.py", line 59, in core_select_lib
fromlist=[modulename], level=0)
[CRITICAL] [App ] Unable to get a Window, abort.
EDIT: Fortschritt! Ich musste Cython installieren. Nachdem ich das getan habe, habe ich die folgenden Fehler:
[ERROR ] [Window ] Unable to use pygame
[ERROR ] [Window ] The module raised an important error: 'OpenGL not available'
Eigentlich funktionieren die Importe wie diese 'von kivy.app importieren App', 'von kivy.uix.anchorlayout importieren AnchorLayout', d. H. Klassen, nicht ganze Dateien. Probieren Sie sie auf die richtige Weise aus. – KeyWeeUsr
@KeyWeeUsr: Was wäre daran richtiger? Es wird grundsätzlich empfohlen, "Import Spam" anstelle von "Spam Import Eier" zu tun: http://programmers.stackexchange.com/questions/187403/import-module-vs-from-module-import-function – Wolph
@Wolph Nun, Ich habe seinen Code nicht gesehen, also ist nichts falsch mit diesen Importen, aber er könnte etwas in den Code einschrauben, weil er sie benutzt - rufen Sie eine Funktion auf, die nicht direkt aufgerufen werden soll, "überschreiben" Sie eine Klasse und erhalten Sie Fehler . – KeyWeeUsr