Kivy: خطأ تجزئة في Raspberry 3B +

تم إنشاؤها على ٢٢ أكتوبر ٢٠١٨  ·  44تعليقات  ·  مصدر: kivy/kivy

إصدارات

  • بايثون: 3.5.3
  • نظام التشغيل: Raspbian GNU / Linux 9.4 (امتداد)
  • Kivy: v1.11.0.dev0، git-916b77b، 20181022
  • طريقة تثبيت Kivy: تثبيت sudo pip3 git + https://github.com/kivy/kivy.git@master

وصف

أحاول تنفيذ العرض التوضيحي app_with_kv.py ولكنه يظهر خطأ segmentation fault دائمًا. أنا أستخدم شاشة TFT من هنا .

الكود والسجلات

[INFO   ] [Logger      ] Record log in /home/pi/.kivy/logs/kivy_18-10-22_12.txt
[INFO   ] [Kivy        ] v1.11.0.dev0, git-916b77b, 20181022
[INFO   ] [Python      ] v3.5.3 (default, Sep 27 2018, 17:25:39) 
[GCC 6.3.0 20170516]
[INFO   ] [Factory     ] 184 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] Using the "OpenGL ES 2" graphics system
[INFO   ] [GL          ] Backend used <sdl2>
Segmentation fault
RPi High SDL2 Confirmed

التعليق الأكثر فائدة

كان لديه مشكلة مماثلة معها. لسبب ما ، تم استدعاء sdl2 بدلاً من gl للخلفية. لا أعرف ما إذا كان هناك حل دائم لهذا الأمر ، ولكن بعد بعض الوقت في محاولة العثور على حل ، فإن الحل الوحيد الذي يمكنني التوصل إليه هو إضافة سطرين أعلى تطبيقك ، قبل استيراد Kivy. يجب أن يبدو مثل هذا:

import os
os.environ['KIVY_GL_BACKEND'] = 'gl'
import kivy

آمل أن يساعد. حظا طيبا وفقك الله!

ملاحظة إذا كنت ترغب في تشغيل تطبيقك على Windows ، فقد ترغب في التعليق os.environ['KIVY_GL_BACKEND'] = 'gl' وإلا فلن يعمل.

ال 44 كومينتر

كان لديه مشكلة مماثلة معها. لسبب ما ، تم استدعاء sdl2 بدلاً من gl للخلفية. لا أعرف ما إذا كان هناك حل دائم لهذا الأمر ، ولكن بعد بعض الوقت في محاولة العثور على حل ، فإن الحل الوحيد الذي يمكنني التوصل إليه هو إضافة سطرين أعلى تطبيقك ، قبل استيراد Kivy. يجب أن يبدو مثل هذا:

import os
os.environ['KIVY_GL_BACKEND'] = 'gl'
import kivy

آمل أن يساعد. حظا طيبا وفقك الله!

ملاحظة إذا كنت ترغب في تشغيل تطبيقك على Windows ، فقد ترغب في التعليق os.environ['KIVY_GL_BACKEND'] = 'gl' وإلا فلن يعمل.

لقد تلقيت نفس الخطأ في اقتراح Zero W.goadik لإصلاح 3B + بالنسبة لي ، ولم أجرب على Zero حتى الآن.

كما أؤكد أن حل goadik يعمل! وأشير أيضًا إلى أنه نظرًا لأنها مشكلة متغير بيئة ، يمكنك ببساطة تصدير المتغير على النحو التالي:

export KIVY_GL_BACKEND=gl

ثم قم بتنفيذ البرنامج النصي.

يستخدم SDL2 للبحث عن الرمز ديناميكيًا.
سيكون من الجيد أن يكون لديك backtrace لفهم المشكلة وحلها.
يمكن تنفيذ الانتقال إلى GL backend لـ rpi اعتمادًا على النظام الأساسي ، لكنني أفضل إصلاح المشكلة الأساسية.

الرجاء استخدام gdb --args python main.py ، اكتب r ، ثم عند التعطل ، نفذ bt all . انشر كل الأشياء.

تمام. هذا هو ناتج gdb --args python main.py :

GNU gdb (Raspbian 7.12-6) 7.12.0.20161007-git
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from python3...(no debugging symbols found)...done.
(gdb) r
Starting program: /usr/bin/python3 main.py
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[INFO   ] [Logger      ] Record log in /home/pi/.kivy/logs/kivy_18-10-27_0.txt
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Kivy        ] v1.11.0.dev0, git-916b77b, 20181022
[INFO   ] [Python      ] v3.5.3 (default, Sep 27 2018, 17:25:39) 
[GCC 6.3.0 20170516]
[INFO   ] [Factory     ] 184 symbols loaded
[DEBUG  ] [App         ] Loading kv <./main.kv>
[DEBUG  ] [App         ] kv <./main.kv> not found
[INFO   ] [Window      ] Provider: egl_rpi
[New Thread 0x74758470 (LWP 973)]
[New Thread 0x73dff470 (LWP 974)]
[New Thread 0x735ff470 (LWP 975)]
[New Thread 0x72dff470 (LWP 976)]
[DEBUG  ] [Window      ] Actual display size: 800x480
[INFO   ] [GL          ] Using the "OpenGL ES 2" graphics system
[DEBUG  ] [GL          ] glActiveTexture is not available
[DEBUG  ] [GL          ] glAttachShader is not available
[DEBUG  ] [GL          ] glBindAttribLocation is not available
[DEBUG  ] [GL          ] glBindBuffer is not available
[DEBUG  ] [GL          ] glBindFramebuffer is not available
[DEBUG  ] [GL          ] glBindRenderbuffer is not available
[DEBUG  ] [GL          ] glBindTexture is not available
[DEBUG  ] [GL          ] glBlendColor is not available
[DEBUG  ] [GL          ] glBlendEquation is not available
[DEBUG  ] [GL          ] glBlendEquationSeparate is not available
[DEBUG  ] [GL          ] glBlendFunc is not available
[DEBUG  ] [GL          ] glBlendFuncSeparate is not available
[DEBUG  ] [GL          ] glBufferData is not available
[DEBUG  ] [GL          ] glBufferSubData is not available
[DEBUG  ] [GL          ] glCheckFramebufferStatus is not available
[DEBUG  ] [GL          ] glClear is not available
[DEBUG  ] [GL          ] glClearColor is not available
[DEBUG  ] [GL          ] glClearStencil is not available
[DEBUG  ] [GL          ] glColorMask is not available
[DEBUG  ] [GL          ] glCompileShader is not available
[DEBUG  ] [GL          ] glCompressedTexImage2D is not available
[DEBUG  ] [GL          ] glCompressedTexSubImage2D is not available
[DEBUG  ] [GL          ] glCopyTexImage2D is not available
[DEBUG  ] [GL          ] glCopyTexSubImage2D is not available
[DEBUG  ] [GL          ] glCreateProgram is not available
[DEBUG  ] [GL          ] glCreateShader is not available
[DEBUG  ] [GL          ] glCullFace is not available
[DEBUG  ] [GL          ] glDeleteBuffers is not available
[DEBUG  ] [GL          ] glDeleteFramebuffers is not available
[DEBUG  ] [GL          ] glDeleteProgram is not available
[DEBUG  ] [GL          ] glDeleteRenderbuffers is not available
[DEBUG  ] [GL          ] glDeleteShader is not available
[DEBUG  ] [GL          ] glDeleteTextures is not available
[DEBUG  ] [GL          ] glDepthFunc is not available
[DEBUG  ] [GL          ] glDepthMask is not available
[DEBUG  ] [GL          ] glDetachShader is not available
[DEBUG  ] [GL          ] glDisable is not available
[DEBUG  ] [GL          ] glDisableVertexAttribArray is not available
[DEBUG  ] [GL          ] glDrawArrays is not available
[DEBUG  ] [GL          ] glDrawElements is not available
[DEBUG  ] [GL          ] glEnable is not available
[DEBUG  ] [GL          ] glEnableVertexAttribArray is not available
[DEBUG  ] [GL          ] glFinish is not available
[DEBUG  ] [GL          ] glFlush is not available
[DEBUG  ] [GL          ] glFramebufferRenderbuffer is not available
[DEBUG  ] [GL          ] glFramebufferTexture2D is not available
[DEBUG  ] [GL          ] glFrontFace is not available
[DEBUG  ] [GL          ] glGenBuffers is not available
[DEBUG  ] [GL          ] glGenerateMipmap is not available
[DEBUG  ] [GL          ] glGenFramebuffers is not available
[DEBUG  ] [GL          ] glGenRenderbuffers is not available
[DEBUG  ] [GL          ] glGenTextures is not available
[DEBUG  ] [GL          ] glGetActiveAttrib is not available
[DEBUG  ] [GL          ] glGetActiveUniform is not available
[DEBUG  ] [GL          ] glGetAttachedShaders is not available
[DEBUG  ] [GL          ] glGetAttribLocation is not available
[DEBUG  ] [GL          ] glGetBooleanv is not available
[DEBUG  ] [GL          ] glGetBufferParameteriv is not available
[DEBUG  ] [GL          ] glGetError is not available
[DEBUG  ] [GL          ] glGetFloatv is not available
[DEBUG  ] [GL          ] glGetFramebufferAttachmentParameteriv is not available
[DEBUG  ] [GL          ] glGetIntegerv is not available
[DEBUG  ] [GL          ] glGetProgramInfoLog is not available
[DEBUG  ] [GL          ] glGetProgramiv is not available
[DEBUG  ] [GL          ] glGetRenderbufferParameteriv is not available
[DEBUG  ] [GL          ] glGetShaderInfoLog is not available
[DEBUG  ] [GL          ] glGetShaderiv is not available
[DEBUG  ] [GL          ] glGetShaderSource is not available
[DEBUG  ] [GL          ] glGetString is not available
[DEBUG  ] [GL          ] glGetTexParameterfv is not available
[DEBUG  ] [GL          ] glGetTexParameteriv is not available
[DEBUG  ] [GL          ] glGetUniformfv is not available
[DEBUG  ] [GL          ] glGetUniformiv is not available
[DEBUG  ] [GL          ] glGetUniformLocation is not available
[DEBUG  ] [GL          ] glGetVertexAttribfv is not available
[DEBUG  ] [GL          ] glGetVertexAttribiv is not available
[DEBUG  ] [GL          ] glHint is not available
[DEBUG  ] [GL          ] glIsBuffer is not available
[DEBUG  ] [GL          ] glIsEnabled is not available
[DEBUG  ] [GL          ] glIsFramebuffer is not available
[DEBUG  ] [GL          ] glIsProgram is not available
[DEBUG  ] [GL          ] glIsRenderbuffer is not available
[DEBUG  ] [GL          ] glIsShader is not available
[DEBUG  ] [GL          ] glIsTexture is not available
[DEBUG  ] [GL          ] glLineWidth is not available
[DEBUG  ] [GL          ] glLinkProgram is not available
[DEBUG  ] [GL          ] glPixelStorei is not available
[DEBUG  ] [GL          ] glPolygonOffset is not available
[DEBUG  ] [GL          ] glReadPixels is not available
[DEBUG  ] [GL          ] glRenderbufferStorage is not available
[DEBUG  ] [GL          ] glSampleCoverage is not available
[DEBUG  ] [GL          ] glScissor is not available
[DEBUG  ] [GL          ] glShaderBinary is not available
[DEBUG  ] [GL          ] glShaderSource is not available
[DEBUG  ] [GL          ] glStencilFunc is not available
[DEBUG  ] [GL          ] glStencilFuncSeparate is not available
[DEBUG  ] [GL          ] glStencilMask is not available
[DEBUG  ] [GL          ] glStencilMaskSeparate is not available
[DEBUG  ] [GL          ] glStencilOp is not available
[DEBUG  ] [GL          ] glStencilOpSeparate is not available
[DEBUG  ] [GL          ] glTexImage2D is not available
[DEBUG  ] [GL          ] glTexParameterf is not available
[DEBUG  ] [GL          ] glTexParameteri is not available
[DEBUG  ] [GL          ] glTexSubImage2D is not available
[DEBUG  ] [GL          ] glUniform1f is not available
[DEBUG  ] [GL          ] glUniform1fv is not available
[DEBUG  ] [GL          ] glUniform1i is not available
[DEBUG  ] [GL          ] glUniform1iv is not available
[DEBUG  ] [GL          ] glUniform2f is not available
[DEBUG  ] [GL          ] glUniform2fv is not available
[DEBUG  ] [GL          ] glUniform2i is not available
[DEBUG  ] [GL          ] glUniform2iv is not available
[DEBUG  ] [GL          ] glUniform3f is not available
[DEBUG  ] [GL          ] glUniform3fv is not available
[DEBUG  ] [GL          ] glUniform3i is not available
[DEBUG  ] [GL          ] glUniform3iv is not available
[DEBUG  ] [GL          ] glUniform4f is not available
[DEBUG  ] [GL          ] glUniform4fv is not available
[DEBUG  ] [GL          ] glUniform4i is not available
[DEBUG  ] [GL          ] glUniform4iv is not available
[DEBUG  ] [GL          ] glUniformMatrix4fv is not available
[DEBUG  ] [GL          ] glUseProgram is not available
[DEBUG  ] [GL          ] glValidateProgram is not available
[DEBUG  ] [GL          ] glVertexAttrib1f is not available
[DEBUG  ] [GL          ] glVertexAttrib2f is not available
[DEBUG  ] [GL          ] glVertexAttrib3f is not available
[DEBUG  ] [GL          ] glVertexAttrib4f is not available
[DEBUG  ] [GL          ] glVertexAttribPointer is not available
[DEBUG  ] [GL          ] glViewport is not available
[INFO   ] [GL          ] Backend used <sdl2>

Thread 1 "python3" received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()

أيضًا ، نظرًا لأن bt all ألقى "لا يوجد رمز" الكل "في السياق الحالي." رسالة ، لدي ناتج thread apply all bt وهو كالتالي:

Thread 5 (Thread 0x72dff470 (LWP 976)):
#0  0x76f88014 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, 
    expected=1, futex_word=0x748885ec <cecservice_notify_available_event+24>)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x748885ec <cecservice_notify_available_event+24>, 
    abstime=0x0) at sem_waitcommon.c:115
#2  0x76f88158 in __new_sem_wait_slow (
    sem=0x748885ec <cecservice_notify_available_event+24>, abstime=0x0)
    at sem_waitcommon.c:282
#3  0x7486ec44 in cecservice_notify_func () from /opt/vc/lib/libbcm_host.so
#4  0x747d7cc4 in vcos_thread_entry (arg=0x74888600 <cecservice_notify_task>)
    at /home/dc4/projects/staging/userland/interface/vcos/pthreads/vcos_pthreads.c:144
#5  0x76f7efc4 in start_thread (arg=0x72dff470) at pthread_create.c:335
#6  0x76e0cbc8 in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:76
   from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 4 (Thread 0x735ff470 (LWP 975)):
#0  0x76f88014 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, 
    expected=1, futex_word=0x74887864 <tvservice_notify_available_event+24>)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x74887864 <tvservice_notify_available_event+24>, 
    abstime=0x0) at sem_waitcommon.c:115
#2  0x76f88158 in __new_sem_wait_slow (
    sem=0x74887864 <tvservice_notify_available_event+24>, abstime=0x0)
---Type <return> to continue, or q <return> to quit---
    at sem_waitcommon.c:282
#3  0x7486e084 in tvservice_notify_func () from /opt/vc/lib/libbcm_host.so
#4  0x747d7cc4 in vcos_thread_entry (arg=0x74887878 <tvservice_notify_task>)
    at /home/dc4/projects/staging/userland/interface/vcos/pthreads/vcos_pthreads.c:144
#5  0x76f7efc4 in start_thread (arg=0x735ff470) at pthread_create.c:335
#6  0x76e0cbc8 in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:76
   from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0x73dff470 (LWP 974)):
#0  0x76f88014 in futex_abstimed_wait_cancelable (private=0, abstime=0x0, 
    expected=1, futex_word=0x748886e8 <dispmanx_notify_available_event+24>)
    at ../sysdeps/unix/sysv/linux/futex-internal.h:205
#1  do_futex_wait (sem=sem@entry=0x748886e8 <dispmanx_notify_available_event+24>, 
    abstime=0x0) at sem_waitcommon.c:115
#2  0x76f88158 in __new_sem_wait_slow (
    sem=0x748886e8 <dispmanx_notify_available_event+24>, abstime=0x0)
    at sem_waitcommon.c:282
#3  0x74872150 in dispmanx_notify_func () from /opt/vc/lib/libbcm_host.so
#4  0x747d7cc4 in vcos_thread_entry (arg=0x74889428 <dispmanx_notify_task>)
    at /home/dc4/projects/staging/userland/interface/vcos/pthreads/vcos_pthreads.c:144
#5  0x76f7efc4 in start_thread (arg=0x73dff470) at pthread_create.c:335
#6  0x76e0cbc8 in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:76
   from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
---Type <return> to continue, or q <return> to quit---

Thread 2 (Thread 0x74758470 (LWP 973)):
#0  0x76e0580c in ioctl () at ../sysdeps/unix/syscall-template.S:84
#1  0x747f1010 in completion_thread () from /opt/vc/lib/libvchiq_arm.so
#2  0x747d7cc4 in vcos_thread_entry (arg=0x74804318 <vchiq_instance+16>)
    at /home/dc4/projects/staging/userland/interface/vcos/pthreads/vcos_pthreads.c:144
#3  0x76f7efc4 in start_thread (arg=0x74758470) at pthread_create.c:335
#4  0x76e0cbc8 in ?? () at ../sysdeps/unix/sysv/linux/arm/clone.S:76
   from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0x76ff7010 (LWP 967)):
#0  0x00000000 in ?? ()

#1  0x74bb28d0 in __pyx_pf_4kivy_8graphics_6opengl_138glGetString (
    __pyx_self=<optimized out>, __pyx_v_name=<optimized out>)
    at /tmp/pip-bp1kpwjd-build/kivy/graphics/opengl.c:12436
#2  __pyx_pw_4kivy_8graphics_6opengl_139glGetString (__pyx_self=<optimized out>, 
    __pyx_arg_name=<optimized out>)
    at /tmp/pip-bp1kpwjd-build/kivy/graphics/opengl.c:12415
#3  0x000b1df8 in PyEval_EvalFrameEx ()
#4  0x000b1a7c in PyEval_EvalFrameEx ()
#5  0x000b1a7c in PyEval_EvalFrameEx ()
#6  0x001985c8 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

حسنًا ، يبدو أن SDL_GL_GetProcAddress لا يمكنه العثور على أي شيء :( فهمت الآن.
طريقتنا في اكتشاف وتحميل opengl مرتبطة بموفر Window المستخدم.
ولكن في هذه الحالة ، يتم استخدام egl_rpi ، وليس SDL2 ، وبالتالي لن تعمل وظيفة SDL2.

يتطلب إصلاح ، شكرا على الإبلاغ!

لست متأكدًا مما إذا كان من المناسب الإضافة هنا ، لكنني أعتقد أن له علاقة بالإصدار الجديد من Raspbian. جربت الأقدم (لدي صورة) وعملت مثل السحر.

يمكن إصلاح مشكلة خطأ التقسيم عند بدء التطبيق باستخدام متغير بيئة ، ولكن أيضًا تتعطل بنفس خطأ التقسيم في كل مرة أقوم بتحميل الرسم البياني به الكثير من البيانات لعرضها.

تكمن مشكلة GDB في أنه إذا حاولت استخدامه على هذا النحو gdb --args python main.py وقمت بتكرار الانهيار ، فإن RPI يتجمد فقط والشيء الوحيد المتبقي في هذه المرحلة هو إعادة تشغيله فقط. عندما أتحقق من السجلات فهي فارغة.

اردت اضافته هنا

واجهت نفس المشكلة ومثل goadik قال إنه قد يكون خطأ من إصدار raspbian الجديد لأنه في صورتي القديمة (Raspberry3 ، kivy v1.11.0.dev0 ، python v3.4.2) يعمل تطبيق kivy بشكل جيد. تم وصف مشكلتي هنا: https://stackoverflow.com/questions/53122908/kivy-opengl-segmentation-fault-on-raspberry

تضمين التغريدة

على صورتي القديمة (Raspberry3 ، kivy v1.11.0.dev0 ، python v3.4.2) ، يعمل تطبيق kivy بشكل جيد

فلماذا لا تستخدم الصورة القديمة؟

تشتهر RPi Dev بقدرتها على دفع "التحديثات" الجديدة التي تكسر كل أنواع الأشياء. لقد مررت بتجربة غير سارة مع هؤلاء ، لدرجة أنني عطلت تمامًا جميع التحديثات المتعلقة بنظام التشغيل القادمة من RPi org.

@ E3V3A

فلماذا لا تستخدم الصورة القديمة؟

لأن لدي RPI تم تكوينه بالفعل مع آخر تحديث لـ raspbian. وكنت أتساءل فقط لماذا لا تعمل kivy على الرغم من أنني كنت أفعل نفس الأشياء تمامًا كما كان من قبل. الآن غيرت إلى الصورة القديمة وهي تعمل بشكل جيد!

من الآن سأعتني بالتحديثات المتسرعة ؛)

ربما لا علاقة لهما تمامًا ، لكن ما لم أكن مخطئًا: يعتمد Kivy على SDL2 و SDL2 على cffi و / أو القاهرة ، ومن الصعب بناء cffi بشكل مستقل عن الهندسة المعمارية. لكنني ركضت عبر حزمة النقطة التالية ، ربما أحاول ذلك؟

# pip3 search cairocffi 
cairotft (0.1.2)   - UI library for small tft screens using cairocffi

@ E3V3A
لقد تحولت بالفعل إلى الصورة القديمة. ربما من الجيد معرفة المستقبل

هل يمكنني أن أسألك عن الصورة التي تستخدمها وأين يمكنني العثور عليها؟ أنا أستخدم Rpi 3 B + و kivy 1.11.0.dev0 ، ما الصورة التي يجب أن أستخدمها؟

@ E3V3A
لقد تحولت بالفعل إلى الصورة القديمة. ربما من الجيد معرفة المستقبل

أنا أستخدم raspbian jessie ، آخر مرة تم تحديثها في 11-6-18 بدون ترقيات. Rpi3 و Kivy v1.10.1 و Python 3.4.2
سجلي:

[INFO] المسجل: سجل الدخول /home/pi/.kivy/logs/kivy_18-11-14_11.txt
[INFO] Kivy: v1.10.1
[INFO] Python: v3.4.2 (افتراضي ، 19 تشرين الأول (أكتوبر) 2014 ، 13:31:11)
[دول مجلس التعاون الخليجي 4.9.1]
[INFO] KivyMD: إصدار KivyMD: 0.1.2
[INFO] المصنع: تم تحميل 194 رمزًا
[INFO] الصورة: الموفرون: img_tex ، img_dds ، img_sdl2 ، img_pil ، img_gif (تم تجاهل img_ffpyplayer)
نافذة [INFO]: الموفر: egl_rpi
[INFO] GL: استخدام نظام الرسوم "OpenGL ES 2"
[INFO] GL: الخلفية المستخدمة
[INFO] GL: إصدار OpenGL [INFO] GL: بائع OpenGL [INFO] GL: عارض OpenGL
[INFO] GL: إصدار تحليل OpenGL: 2 ، 0
[INFO] GL: نسخة التظليل
[INFO] GL: الحد الأقصى لحجم الملمس <2048>
[INFO] GL: الحد الأقصى للوحدات Texture <8>
[INFO] النافذة: لوحة المفاتيح الافتراضية مسموح بها ، الوضع متعدد المستخدمين ، غير مثبت
[INFO] النص: الموفر: sdl2
[INFO] GL: دعم نسيج NPOT متاح
[INFO] الحافظة: الموفر: xclip
[INFO] CutBuffer: تمكين دعم المخزن المؤقت
[INFO] ProbeSysfs: مطابقة الجهاز: / dev / input / event0
...

شكرا ، واجهت نفس المشكلة.
تصدير KIVY_GL_BACKEND = gl
تم التصليح.

لديك نفس المشكلة بالضبط في Raspberry pi 3b + .. هل من الممكن تثبيت kivy على Ubuntu core أو أي نظام تشغيل آخر يدعم raspberry pi 3b +؟

أيضًا أي صورة Raspbian يجب أن أستخدمها في raspberry pi 3b + للحصول على عمل kivy

لم يتم إصلاح هذه المشكلة
باستخدام نظام التشغيل الاستيراد
os.environ ['KIVY_GL_BACKEND'] = 'gl'
استيراد kivy
هو مجرد حل مؤقت

لم يتم ذكره بعد في هذا الموضوع ولكن قد يكون من المناسب ما إذا كان شخص ما لديه إصدار Lite أو PIXEL من Raspbian.

screen shot 2018-12-17 at 8 34 11 am

يتضمن sdl2 تبعية X windows ومن الواضح أن Raspbian Lite لا يتضمن ذلك.

أستطيع أن أؤكد أن التسلل ...

import os
os.environ['KIVY_GL_BACKEND'] = 'gl'

... في الجزء العلوي من نص Python الخاص بي ، يعمل تطبيق

ما هو إصدار raspbian الذي يجب أن أستخدمه حتى لا أواجه هذه المشكلة؟
حاولت إلغاء نظام التشغيل الخاص بي إلى Raspbian Jessie 8.0 ولكن لدي نفس خطأ S ...

ما هو إصدار raspbian الذي يجب أن أستخدمه حتى لا أواجه هذه المشكلة؟
حاولت إلغاء نظام التشغيل الخاص بي إلى Raspbian Jessie 8.0 ولكن لدي نفس خطأ S ...

نفس المشكلة هنا مع raspberry pi 3b +:

بدء البرنامج: / usr / bin / python3 /home/pi/sorbito/main.py
[تمكين تصحيح الخيط باستخدام libthread_db]
استخدام مكتبة libthread_db host "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[INFO] [المسجل] تسجيل الدخول /home/pi/.kivy/logs/kivy_19-02-13_3.txt
[INFO] [Kivy] v1.11.0.dev0، git-233cdd1، 20190212
[INFO] [Python] v3.5.3 (افتراضي ، 27 سبتمبر 2018 ، 17:25:39)
[GCC 6.3.0 20170516]
[INFO] [المصنع] تم تحميل 184 رمزًا
[معلومات] [صورة] الموفرون: img_tex ، img_dds ، img_pil ، img_gif (تم تجاهل img_sdl2 ، img_ffpyplayer)
[INFO] [نص] المزود: sdl2
مزود [INFO] [Window]: egl_rpi
[موضوع جديد 0x747ff470 (LWP 2420)]
[موضوع جديد 0x73dff470 (LWP 2421)]
[موضوع جديد 0x735ff470 (LWP 2422)]
[موضوع جديد 0x72dff470 (LWP 2423)]
[INFO] [GL] استخدام نظام الرسوم "OpenGL ES 2"
[INFO] [GL] الخلفية المستخدمة

تلقى الخيط 1 "python3" إشارة SIGSEGV ، خطأ تجزئة.
0x00000000 بوصة ؟؟ ()

سجل:
[INFO] المسجل: سجل الدخول /home/pi/.kivy/logs/kivy_19-02-13_3.txt
[INFO] Kivy: v1.11.0.dev0، git-233cdd1، 20190212
[INFO] Python: v3.5.3 (افتراضي ، 27 سبتمبر 2018 ، 17:25:39)
[GCC 6.3.0 20170516]
[INFO] المصنع: تم تحميل 184 رمزًا
[INFO] صورة: الموفرون: img_tex ، img_dds ، img_pil ، img_gif (تم تجاهل img_sdl2 ، img_ffpyplayer)
[INFO] النص: الموفر: sdl2
نافذة [INFO]: الموفر: egl_rpi
[INFO] GL: استخدام نظام الرسوم "OpenGL ES 2"
[INFO] GL: الخلفية المستخدمة

لا يزال لا يوجد حل لهذا؟

os.environ ['KIVY_GL_BACKEND'] = 'لا يساعد gl'd إطلاقًا مع v1.11.0.dev0، git-9ebad2d، 20190516

الحصول على: [حرج] [التطبيق] تعذر الحصول على نافذة ، إحباط

ومع الإصدار الأقدم مثل 1.10.1 ، لا أحصل على أي دعم PNG شفاف ... جميع ملفات PNG الشفافة مرسومة بخلفية سوداء ... نفس الكود يعمل بشكل جيد في دبيان 9 رغم ذلك ...

فهل لن يتم دعم RPi Stretch-Lite مرة أخرى؟

أعد قراءة تعليقي الأخير على هذا الموضوع. إنه يعمل بالنسبة لي على Raspbian Stretch Lite (نوفمبر 2018) ويدعم 1.10.1 _does_ المئات أو نحو ذلك من رسومات PNG التي أستخدمها مع الخلفيات الشفافة.

لتأكيد بناء باستخدام أحدث ثبات (1.11.0) في تثبيت خفيف ممتد محدث بالكامل على أي RPI يتسبب في حدوث هذا الخطأ في التجزئة. يجب بناء مستقر 1.10.1 للتشغيل على RPI. لست متأكدًا من سبب قيامك بإصدار مستقر يعاني من هذه المشكلة على منصة رئيسية لأكثر من 6 أشهر.

أواجه هذه المشكلة أيضًا في Raspberry 3 B + ، على raspbian lite

الحل الجيد الآن هو التأكد من تثبيت Pillow ثم تشغيل kivy باستخدام KIVY_WINDOW=sdl2 . لا حاجة لضبط الواجهة الخلفية gl في هذه الحالة حيث سيتم استخدام sdl2. إذا كنت تريد استخدام موفر النافذة egl_rpi ، فيجب ضبط الواجهة الخلفية لـ gl.

هذا بالتأكيد يعتبر خطأ الانحدار. التثبيت على RPI 3B + as

pip install git+https://github.com/kivy/[email protected]

يجعل في خطأ التجزئة بينما

pip install git+https://github.com/kivy/[email protected]

يعمل كالسحر.

أنا أخطط لإصلاحه في إصدار ما بعد.

في الأربعاء 12 يونيو 2019 الساعة 1:11 مساءً. RafalSkolasinski [email protected]
كتب:

هذا بالتأكيد يعتبر خطأ الانحدار. التثبيت على RPI 3B + as

نقطة تثبيت git + https://github.com/kivy/[email protected]

يجعل في خطأ التجزئة بينما

نقطة تثبيت git + https://github.com/kivy/[email protected]

يعمل كالسحر.

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/kivy/kivy/issues/6007؟
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/AAMRN7XWDPCYLGW5QREDN3DP2EU2XANCNFSM4F6QJQMQ
.

هل يمكنك اختبار https://github.com/kivy/kivy/pull/6384 ؟ يجب أن يصلح هذا الأمر ويسمح لك أيضًا باستخدام أي من الخلفيات الثلاثة عند تحديده يدويًا (egl_rpi و sdl2 و x11 إذا تم تجميعه).

يمكنني اختباره لاحقًا اليوم أو غدًا.

في الخميس ، 13 يونيو 2019 ، الساعة 22:52 ، كتب matham ، [email protected] :

هل يمكنك اختبار # 6384 https://github.com/kivy/kivy/pull/6384 ؟ هذا يجب
قم بإصلاحه ويسمح لك أيضًا باستخدام أي من الخلفيات الثلاثة عند تحديده
يدويًا (egl_rpi و sdl2 و x11 إذا تم تجميعها).

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/kivy/kivy/issues/6007؟email_source=notifications&email_token=ACTL75LVT74IBQJQ4W5QARTP2K6RXA5CNFSM4F6QJQM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/ACTL75OGYIBPXEVW33B57KLP2K6RXANCNFSM4F6QJQMQ
.

6384 تم إصلاحه لي باستخدام egl_rpi على raspbian-lite ، لا حاجة للتصدير.

[INFO] المسجل: سجل الدخول /home/pi/.kivy/logs/kivy_19-06-14_1.txt
[INFO] صورة: الموفرون: img_tex ، img_dds ، img_pil ، img_gif (تم تجاهل img_sdl2 ، img_ffpyplayer)
[INFO] Kivy: v2.0.0.dev0، git-dccba95، 20190614
[INFO] Kivy: مثبت في "/home/pi/Stuff/kivy-fix/kivy/__init__.py"
[INFO] Python: v3.5.3 (افتراضي ، 27 سبتمبر 2018 ، 17:25:39)
[GCC 6.3.0 20170516]
[INFO] Python: مترجم فوري في "/ usr / bin / python3"
[INFO] المصنع: تم تحميل 184 رمزًا
[INFO] النص: الموفر: sdl2
نافذة [INFO]: الموفر: egl_rpi
[INFO] GL: استخدام نظام الرسوم "OpenGL ES 2"
[INFO] GL: الخلفية المستخدمة
[INFO] GL: إصدار OpenGL [INFO] GL: بائع OpenGL [INFO] GL: عارض OpenGL
[INFO] GL: إصدار تحليل OpenGL: 2 ، 0
[INFO] GL: Shading v

نعم إنه يعمل.
في البداية كانت لدي مشكلة وحصلت على بعض الأخطاء

[CRITICAL] [Window      ] Unable to find any valuable Window provider.

ولكن بعد إضافة pillow بدأ العمل.
أعتقد أن pillow تمت إضافة التبعيات الجديدة في 1.11 ؟

تعديل:
هل سيصدر هذا الإصلاح في 1.11.1 ؟ أرى

[INFO ] Kivy: v2.0.0.dev0, git-dccba95, 20190614

في السجلات.

سيتم اختيار هذا في إصدار منشور 1.11.0.post0 (https://github.com/kivy/kivy/pull/6357). بهذه الطريقة ، سيحصل الأشخاص الذين يستهدفون 1.11.0 عند التثبيت على الإصدار الثابت تلقائيًا (بافتراض أن النقطة تقوم بالشيء الصحيح هنا وتقوم بتثبيت 1.11.0.post0 عند طلب 1.11.0 ).

عادة ، سأنتقل إلى 1.11.1 ، لكن هذا لا يعمل بشكل جيد مع سير العمل لدينا ، بالنظر إلى قفزتنا إلى 2.0.0 والإصدار التالي من العناصر العاجلة مثل دعم Python 2. يجب أن يحدث هذا الإصدار قريبًا جدًا.

بخصوص الوسادة ، لست متأكدًا من الأمر. sdl2_image المفترض أن يعمل

سأختار 1.11.1 حيث من الواضح أنه تم تضمين إصلاح الخطأ. دعونا
آمل أن تكون النقطة سنفعل الشيء الصحيح.

في الجمعة ، 14 يونيو 2019 ، الساعة 17:11 ، كتب matham ، [email protected] :

سيتم اختيار هذا في إصدار لاحق لـ 1.11.0.post0 (# 6357
https://github.com/kivy/kivy/pull/6357 ). بهذه الطريقة يستهدف الناس
1.11.0 عند التثبيت سيحصل تلقائيًا على الإصدار الثابت (بافتراض
النقطة تفعل الشيء الصحيح هنا وتقوم بتثبيت 1.11.0.post0 عندما يكون 1.11.0 هو
طلب).

عادةً ، سأنتقل إلى 1.11.1 ، لكن هذا لا يعمل جيدًا مع
سير العمل ، بالنظر إلى الانتقال إلى 2.0.0 والإصدار التالي الذي يكسر الأشياء مثل
كدعم للبيثون 2. يجب أن يحدث هذا الإصدار قريبًا جدًا.

بخصوص الوسادة ، لست متأكدًا من الأمر. يجب أن تعمل sdl2_image
(أعتقد أنه نجح في الماضي؟) ، لكن لسبب ما يتعذر تحميله
الصورة. أعتقد أنه سيحتاج إلى مزيد من استكشاف الأخطاء وإصلاحها (نرحب بالعلاقات العامة). في
على أي حال ، لقد قمت بتحديث المستندات لإدراج الوسادة على أنها تبعية.

-
أنت تتلقى هذا لأنك مشترك في هذا الموضوع.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/kivy/kivy/issues/6007؟email_source=notifications&email_token=ACTL75LMHH3Q2FDKYW4HTUTP2O7LDA5CNFSM4F6QJQM2YY3PNVWWK3TUL52HS4DFVREXG43VMVB11
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/ACTL75NBY6O6KBPR4QT3LPDP2O7LDANCNFSM4F6QJQMQ
.

إذا طلبت 1.11.0 ، فمن المحتمل ألا يتم تثبيت النقطة 1.11.1 ، ولكن 1.11.0 بالضبط. لست متأكدًا مما سيفعله إذا طلبنا 1.11 ،

أوه ، قصدت أنه سيتم تثبيت مصححة ".post0" عندما نطلب "1.11.0" :)

في الجمعة ، 14 يونيو 2019 ، الساعة 19:29 ، كتب matham ، [email protected] :

إذا طلبت 1.11.0 ، فمن المحتمل ألا تقوم النقطة بتثبيت 1.11.1 ، ولكن 1.11.0
بالضبط. لست متأكدًا مما سيفعله إذا طلبنا 1.11 ،

-
أنت تتلقى هذا لأنك مشترك في هذا الموضوع.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/kivy/kivy/issues/6007؟email_source=notifications&email_token=ACTL75JZDOPPHORTC3LEVZTP2PPPNA5CNFSM4F6QJQM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63TM
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/ACTL75KC3BTJGUQTTBMAHLDP2PPPNANCNFSM4F6QJQMQ
.

كما تمت مناقشته أعلاه ، أضفت export KIVY_GL_BACKEND=gl إلى المسار والآن لدي مشكلة أخرى تقول ...
create_window() takes 1 positional argument but 2 were given

الرجاء مساعدتي للخروج من هذا الخطأ.
عندما أقوم بتشغيل الكود الخاص بي في Raspberry Pi

sudo python3 main.py
[تحذير] [التكوين] تم اكتشاف إصدار تهيئة أقدم (0 بدلاً من 14)
[تحذير] [تكوين] ترقية التكوين قيد التقدم.
[INFO] [المسجل] تسجيل الدخول /root/.kivy/logs/kivy_19-06-17_0.txt
[INFO] [Kivy] v1.9.1
[INFO] [Python] v3.5.3 (افتراضي ، 27 سبتمبر 2018 ، 17:25:39)
[GCC 6.3.0 20170516]
[INFO] [المصنع] تم تحميل 179 رمزًا
[معلومات] [صورة] الموفرون: img_tex ، img_dds ، img_gif ، img_sdl2 ، img_pil (تم تجاهل img_ffpyplayer)
[INFO] [نص] المزود: sdl2
[INFO] [OSC] باستخدامللمقبس
[INFO] [Window] الموفر: sdl2 (تم تجاهل ['window_egl_rpi'])
خطأ: لم يتم تعيين XDG_RUNTIME_DIR في البيئة.
[حاسمة] [نافذة] غير قادر على العثور على أي مزود Window ذي قيمة على الإطلاق!
egl_rpi - ImportError: لا يمكن استيراد الاسم 'bcm'
ملف "/usr/lib/python3/dist-packages/kivy/core/__init__.py" ، السطر 59 ، في core_select_lib
fromlist = [modulename] ، المستوى = 0)
ملف "/usr/lib/python3/dist-packages/kivy/core/window/window_egl_rpi.py" ، السطر 12 ، في
من kivy.lib.vidcore_lite import bcm، egl

sdl2 - RuntimeError: b "لا يوجد جهاز فيديو متاح"
ملف "/usr/lib/python3/dist-packages/kivy/core/__init__.py" ، السطر 67 ، في core_select_lib
cls = cls ()
ملف "/usr/lib/python3/dist-packages/kivy/core/window/window_sdl2.py" ، السطر 138 ، في __init__
سوبر (WindowSDL ، ذاتي) .__ init __ ()
ملف "/usr/lib/python3/dist-packages/kivy/core/window/__init__.py" ، السطر 722 ، في __init__
self.create_window ()
ملف "/usr/lib/python3/dist-packages/kivy/core/window/window_sdl2.py" ، السطر 237 ، في create_window
self.fullscreen ، يمكن تغيير حجمها ، حالة)
ملف "kivy / core / window / _window_sdl2.pyx" ، السطر 80 ، في kivy.core.window._window_sdl2._WindowSDL2Storage.setup_window (kivy / core / window / _window_sdl2.c: 1893)
ملف "kivy / core / window / _window_sdl2.pyx" ، السطر 55 ، في kivy.core.window._window_sdl2._WindowSDL2Storage.die (kivy / core / window / _window_sdl2.c: 1479)

x11 - ImportError: لا توجد وحدة باسم "kivy.core.window.window_x11"
ملف "/usr/lib/python3/dist-packages/kivy/core/__init__.py" ، السطر 59 ، في core_select_lib
fromlist = [modulename] ، المستوى = 0)

[حرجة] [التطبيق] تعذر الحصول على نافذة ، إحباط.
تم تجاهل الاستثناء في: "kivy.properties.dpi2px"
Traceback (آخر مكالمة أخيرة):
ملف "/usr/lib/python3/dist-packages/kivy/utils.py" ، السطر 513 ، في __get__
retval = self.func (inst)
ملف "/usr/lib/python3/dist-packages/kivy/metrics.py" ، السطر 175 ، نقطة في البوصة
EventLoop.ensure_window ()
ملف "/usr/lib/python3/dist-packages/kivy/base.py" ، السطر 126 ، في sure_window
sys.exit (1)
خروج النظام: 1
[حرجة] [التطبيق] تعذر الحصول على نافذة ، إحباط.

أي شخص ، من فضلك دعني أعرف ماذا علي أن أفعل.

@ jayeshsingh9767 هل جربت مع السيد أو الإصدار الأخير؟ تم إصلاح هذا بشكل رئيسي ولكننا لم نصدر إصدارًا جديدًا يتضمن الإصلاح حتى الآن.

@ harshp1301 هذا الخطأ ليس له علاقة بهذه المشكلة. هذا يبدو أيضًا وكأنه مشكلة في نظامك وليس kivy. للحصول على الدعم من فضلك اطلب الخلاف.

matham شكرًا ، ولكن تم إصلاح المشكلة عندما أزلت Window.size() من الكود الخاص بي.
أعتقد أننا لا نستطيع إدارة تطبيق kivy Window في Raspberry pi .... لكن هل يستطيع أحد أن يشرح لي السبب؟
ملاحظة: Wimdow.size() كان يعمل بشكل مثالي على Ubuntu ...

هذا ليس له علاقة بهذه المشكلة ، فربما تفتح مشكلة جديدة لهذا (إذا لم تكن موجودة)؟ لكن ربما هذا غير ممكن مع الواجهة الخلفية لنافذة egl_rpi. سأحاول مع sdl2 backend أو x11 window backend (أعتقد أن كلاهما قابل لتغيير الحجم حتى على pi).

واجهت مشكلات مماثلة مع نظام التشغيل raspbian lite الفعلي (2020-05-27) -> بعد التحميل الأول ، حصلت على خطأ في التجزئة. من حاولت التحول إلى "gl". بعد ذلك ، أحصل على شاشة بحجم صغير ومؤشر أسود بدون أي محتويات من واجهة المستخدم الرسومية.
إذا عدت إلى نظام raspbian lite السابق ، فإنه يعمل مع Kivy 1.11.1. في الواقع أنا لا أعرف بالضبط ما هو الفرق. يبدو أن هناك بعض التحديثات التي تسبب هذه المشكلة (libs ، البرامج الثابتة ...؟). لحسن الحظ ، قمت بعمل نسخة احتياطية من بطاقة sd القديمة واستعادتها لواجهة المستخدم الرسومية المستخدمة بالفعل.
قررت استخدام Kivy بسبب عدم حاجتي إلى تثبيت X11. واجهة المستخدم الرسومية الخاصة بي تعمل في وحدة التحكم ...

AndreasPantle أواجه نفس التجربة مع 1.11.1 ونظام التشغيل Raspberry PI (أعيدت تسميته Raspbian). ذاهب لإعطاء 1.10.1 دوامة وانظر ماذا سيحدث. kivy هو تبعية لوحدة التحكم في وسائط Mission Pinball ، لذلك قد لا يتوفر لديك خيار قلب الإصدار.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات
يستخدم موقع bleepcoder.com معلومات GitHub المرخصة بشكل عام لتزويد المطورين حول العالم بحلول لمشاكلهم. نحن لسنا تابعين لشركة GitHub، Inc. أو مع أي مطورين يستخدمون GitHub لمشاريعهم. نحن لا نستضيف أيًا من مقاطع الفيديو أو الصور على خوادمنا. جميع الحقوق تنتمي إلى أصحابها.
مصدر هذه الصفحة: مصدر

لغات البرمجة الشعبية
مشاريع GitHub الشعبية
المزيد من مشاريع GitHub

© 2024 bleepcoder.com - Contact
Made with in the Dominican Republic.
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.