Salut,
J'ai installé kivy dans Ubuntu 17.10 et je n'arrive pas à le faire fonctionner. J'ai essayé beaucoup de choses.
J'ai essayé avec Python 2 et 3, et aussi dans une machine virtuelle.
Avec cette application simple :
depuis l'application d'importation kivy.app
App().run()
Je reçois:
[INFO ] [Logger ] Enregistrez le journal dans /home/twistx77/.kivy/logs/kivy_17-10-21_1.txt
[INFO ] [Kivy ] v1.10.0
[INFO ] [Python ] v3.6.3 (par défaut, 3 octobre 2017, 21:45:48)
[CCG 7.2.0]
Traceback (appel le plus récent en dernier) :
Fichier "/home/twistx77/temp/test.py", ligne 2, dans
depuis l'application d'importation kivy.app
Fichier "/usr/lib/python3/dist-packages/kivy/app.py", ligne 319, dans
à partir de kivy.base importer runTouchApp, stopTouchApp
Fichier "/usr/lib/python3/dist-packages/kivy/base.py", ligne 30, dans
depuis kivy.event importer EventDispatcher
Fichier "/usr/lib/python3/dist-packages/kivy/event.py", ligne 8, dans
importer kivy._event
ImportError : /usr/lib/python3/dist-packages/kivy/_event.cpython-36m-x86_64-linux-gnu.so : symbole non défini : PyFPE_jbuf
J'ai également vérifié que certaines personnes sur les forums avaient le même problème.
J'ai le même problème avec ubuntu 17.10 + kivy 1.10.
Kivy 1.9.1 + python 2.7.14 a une erreur différente tous ensemble. je reçois ce message d'erreur
[INFO ] [OSC ] using <multiprocessing> for socket
[INFO ] [Window ] Provider: sdl2(['window_egl_rpi'] ignored)
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 4 (X_DestroyWindow)
Resource id in failed request: 0x0
Serial number of failed request: 165
Current serial number in output stream: 166
des solutions s'il vous plait.
Pour info - Opensuse Tumbleweed fait la même chose. Kivy ne veut tout simplement pas courir
Moi aussi j'ai eu le même problème avec python 2.7.14, kivy 1.10.0 et ubuntu 17.10,
Même problème ici.
Utiliser la version Ubuntu 16.04 est une mauvaise solution de contournement, mais Kivy fonctionne !!
:-(
Cordiali SalutiFrancesco Cerone
tél.
2017-10-29 11:30 GMT":" Marcus Klein [email protected] :
Même problème ici.
-
Vous recevez ceci parce que vous avez commenté.
Répondez directement à cet e-mail, consultez-le sur GitHub
https://github.com/kivy/kivy/issues/5453#issuecomment-340252026 , ou couper le son
le fil
https://github.com/notifications/unsubscribe-auth/ALEi4VflNryMejJk8G34CBD--GnDkCyOks5sxFPTgaJpZM4QE60X
.
Je peux confirmer que j'ai les mêmes problèmes. Je n'ai pas encore trouvé de solution.
Description : Ubuntu 17.10
Sortie : 17.10
python3-kivy/artful,now 1.10.0-0~stable0+201708191146~pkg175~ubuntu17.10.1 amd64 [installed]
python3-kivy-bin/artful,now 1.10.0-0~stable0+201708191146~pkg175~ubuntu17.10.1 amd64 [installed,automatic]
python3-kivy-common/artful,now 1.10.0-0~stable0+201708191146~pkg175~ubuntu17.10.1 amd64 [installed,automatic]
Je suis revenu à la version Kivy 1.9.1 fournie avec Ubuntu 17.10. De plus, j'ai dû basculer mon serveur d'affichage de Wayland vers Xorg. Lors de l'utilisation de Wayland, Kivy essaie de s'exécuter avec le pilote egl-rpi pour Raspberry Pi, ce qui n'a pas de sens sur un bureau amd64 normal.
J'ai le même problème lorsque j'essaie d'exécuter un exemple simple de kivy (rendu 3D). Kivy ne fonctionne pas
Version Ubuntu : 17.10
[INFO ] [Logger ] Enregistrez le journal dans /home/susheel/.kivy/logs/kivy_17-11-01_7.txt
[INFO ] [Kivy ] v1.10.0
[INFO ] [Python ] v2.7.14 (par défaut, 23 septembre 2017, 22:06:14)
[CCG 7.2.0]
Traceback (appel le plus récent en dernier) :
Fichier "main.py", ligne 15, dans
depuis l'application d'importation kivy.app
Fichier "/usr/lib/python2.7/dist-packages/kivy/app.py", ligne 319, dans
à partir de kivy.base importer runTouchApp, stopTouchApp
Fichier "/usr/lib/python2.7/dist-packages/kivy/base.py", ligne 30, dans
depuis kivy.event importer EventDispatcher
Fichier "/usr/lib/python2.7/dist-packages/kivy/event.py", ligne 8, dans
importer kivy._event
ImportError : /usr/lib/python2.7/dist-packages/kivy/_event.x86_64-linux-gnu.so : symbole non défini : PyFPE_jbuf
Même problème ici
l'utilisateur parabolize
sur irc a signalé un problème entre le bureau gnome et la version sdl2, et la prise en charge du multi-échantillonnage, pour ceux qui sont affectés par ce problème, l'une ou l'autre de ces solutions de contournement devrait fonctionner.
between 2.0.5 and 2.0.6
Veuillez signaler si cela résout le problème pour vous, s'il s'agit de plusieurs bogues différents, nous devrions ouvrir des problèmes distincts.
J'ai essayé deux des ci-dessus:
Même erreur signalée pour les deux.
Salut tshirtman,
Je peux confirmer le commentaire de necrolin.
De plus, j'ai essayé d'installer le package libsdl2-dev dans la version 2.06 et cela ne fonctionne pas non plus.
Joli surnom au fait haha.
Deux problèmes différents. Tchayo voir #5476
Je peux confirmer que la mise à zéro des multi -
@rroa C'est vraiment intéressant. J'ai essayé de remettre les multi-échantillons à zéro et j'ai également désactivé wayland, mais je vois toujours cette erreur sur une nouvelle installation d'Ubuntu 17.10 sous python 3. Donc, il doit y avoir autre chose de différent entre nos installations.
Encore une fois, nous parlons de deux problèmes différents. L'un est une erreur lors de l'importation de la boucle d'événement, l'autre est un problème sdl2 avec des paramètres non pris en charge (comme le multi-échantillonnage dans gnome). Si vous obtenez une erreur comme celle de Twistx77, vous êtes au bon endroit pour discuter de votre problème. Si vous avez une erreur comme Tchayo, allez au numéro 5476.
Je confirme que la solution par parabolize sur le problème #5476, résout le problème pour kivy 1.9.1 dans ubuntu 17.10
Ce que je ne comprends pas, c'est comment est-il possible que la même distribution avec la même version ait un problème sdl2 sur certaines machines et différent sur d'autres. Cela a-t-il quelque chose à voir avec les pilotes ou quelque chose du genre ? Les deux machines ne fonctionnent-elles pas exactement avec le même logiciel ?
je n'ai pas mis à niveau ou rétrogradé sdl2 tout ce que j'ai fait était ceci:
désactiver le multisampling dans kivy (peut être fait en éditant ~/.kivy/config.ini et en réglant le multisampling sur 0)
et cela a fonctionné, alors peut-être que le multisampling est le problème !!!?!
Pour info : cela ne fonctionnera que pour kivy 1.9.1..reportez-vous au numéro 5476
Le multi-échantillonnage a été interrompu dans de nombreux cas depuis que Kivy est passé de Pygame à SDL2, nous n'avons pas pu identifier le problème jusqu'à présent dans Kivy, et il peut également s'agir d'un bogue en amont dans SDL2. Voir https://github.com/kivy/kivy/issues/3576 par exemple.
J'ai également eu un problème avec une ancienne carte graphique, Pygame définissant les multi-échantillons sur 8 fonctionnait et avait un effet visible, tandis que la valeur maximale qui fonctionnait dans le même environnement avec SDL2 était de 4.
A eu le même problème. Trouvé que kivy v1.9.1 fonctionne avec Python v2.7.14, avec le multi-échantillonnage défini sur 0 dans ~/.kivy/config.ini , dans Ubuntu 17.10.
Merci @saubhik ça marche pour moi aussi !
Installé Cython==0.23 et kivy==1.9.1 et cela fonctionne. N'a pas changé de configuration.
Certaines dépendances requises ont probablement été installées par apt-get car je l'ai utilisé pour installer (la version non fonctionnelle de) python-kivy. J'ai ensuite supprimé Cython et python-kivy, puis installé les deux avec pip dans les versions mentionnées précédemment (Cython en premier).
Bonne chance
Je peux confirmer que la version 1.9.1 fonctionne bien avec python 2.7 mais cela ne fonctionne pas avec 3 même si cela ne renvoie pas la même erreur que celle que j'ai eue avec la 1.10.
Je viens d'essayer avec une nouvelle installation d'Ubuntu 17.10 et j'ai uniquement installé kivy avec le PPA fourni sur le site Web de kivy et installé juste ceci:
sudo apt-get install python-kivy=1.9.1-1build3
@Twistx77
J'ai fait la même chose qu'avant avec python3.6 et cela fonctionne pour moi - j'ai désinstallé Cython et python3-kivy et installé à la fois Cython et kivy en utilisant pip (pas apt-get!) Dans les versions mentionnées ci-dessus. J'utilise Ubuntu 17.10
pip3 installer Cython==0.23
pip3 installer kivy==1.9.1
Je ne sais pas s'il s'agit de quelque chose que j'ai installé ou simplement d'une mise à jour d'Ubuntu, mais maintenant j'obtiens la même erreur qu'avant.
Éditer:
Je l'ai fait fonctionner en 17.10 en compilant kivy comme indiqué par ZenCODE ici : https://groups.google.com/forum/#!topic/kivy -users/lRLfxp1Sywg
@ Twistx77 J'ai installé via pip dans un environnement virtuel (v1.9.1) et cela semble toujours fonctionner correctement même avec le système complètement à jour. Je suppose qu'il y a une sorte de conflit à l'origine de ce bogue sur votre ordinateur s'il a soudainement cessé de fonctionner pour vous.
Au fait, lors de la compilation, avez-vous réussi à faire fonctionner la version 1.10 ? Si c'est le cas, je vais tenter le coup aussi. J'ai essayé de compiler la semaine dernière (sans utiliser la solution ZenCODE évidemment) et cela n'a pas réussi à compiler pour moi.
J'ai fait fonctionner Kivy en l'installant manuellement et en utilisant l'ancien moteur de rendu pygame. Une solution de contournement je suppose.
A eu le même problème que Twistx77 sur kali light avec python 2.7.14 et kivy 1.10.0
J'ai suivi la solution
A eu le même problème sur Ubuntu 17.10.
Erreur:
/Layouts, custom widgets and attributes/stack/stack.py"
Purge log fired. Analysing...
Purge finished!
[INFO ] [Logger ] Record log in /home/geistic/.kivy/logs/kivy_18-02-11_88.txt
[INFO ] [Kivy ] v1.10.0
[INFO ] [Python ] v3.6.3 (default, Oct 3 2017, 21:45:48)
[GCC 7.2.0]
/usr/bin/python3 "/home/geistic/Programming/python/Kivy/Layouts, custom widgets and attributes/stack/stack.py"
Traceback (most recent call last):
File "/home/geistic/Programming/python/Kivy/Layouts, custom widgets and attributes/stack/stack.py", line 4, in <module>
from kivy.app import App
File "/usr/lib/python3/dist-packages/kivy/app.py", line 319, in <module>
from kivy.base import runTouchApp, stopTouchApp
File "/usr/lib/python3/dist-packages/kivy/base.py", line 30, in <module>
from kivy.event import EventDispatcher
File "/usr/lib/python3/dist-packages/kivy/event.py", line 8, in <module>
import kivy._event
ImportError: /usr/lib/python3/dist-packages/kivy/_event.cpython-36m-x86_64-linux-gnu.so: undefined symbol: PyFPE_jbuf
Tout semble fonctionner après la solution @BartoszCki , je peux confirmer. J'ai essayé d'installer à partir des référentiels officiels d'ubuntu et ensuite de Kivy, rien de tout cela n'a fonctionné.
Désinstallez tout :
sudo apt-get remove --purge python3-kivy
sudo pip3 uninstall cython kivy
sudo apt autoremove
Puis:
sudo pip3 install Cython==0.23
sudo pip3 install kivy==1.9.1
Fonctionne avec __Python 3.6.3 (par défaut, 3 octobre 2017, 21:45:48)__.
Je rencontre cela sur Ubuntu 17.10, mais je dépends de Kivy 1.10 à cause de RecycleView. Existe-t-il un moyen simple de forcer PyGame au lieu de SDL2 ? Est-ce que ça marcherait autour de ça ?
Y a-t-il quelqu'un avec une solution? Je dois vraiment utiliser Kivy sur Ubuntu 17.10 ?
Découvrez ceci : https://groups.google.com/forum/#!topic/kivy -users/lRLfxp1Sywg
C'est une solution partielle et ne convient pas à la production, mais à des fins éducatives semble fonctionner.
@ 0AlphaZero0 Bien que le PPA ne fonctionne peut-être pas sur 17.10 pour le moment, je peux l' installer via un environnement virtuel (voir les instructions sur le site Web de Kivy).
Construire et installer Kivy à partir de la source semble fonctionner sur Ubuntu 18.04, suivez simplement ce guide à partir de la documentation .
Tant pour Ubuntu 17.10 que pour Ubuntu 18.04, la recommandation actuellement (mai 2018) est d'installer à partir du PPA quotidien . La construction à partir de la source fonctionne également, comme l' a dit
Dans les commentaires ci-dessus, c'est déjà mentionné, juste pour réitérer : Sur Ubuntu 17.10, il y a un bogue dans une dépendance pour lequel la solution de contournement consiste à changer une valeur dans votre ~/.kivy/config.ini
:
[graphics]
...
multisamples = 0
Confirmé ci-dessus, le correctif FONCTIONNE !
TRAVAUX !
Ubuntu 16.04.02
Python 2.7.11
pépin 10.0.1
cython 0,23
kivy 1.9.1
Lors de l'exécution de Debian, l'installation à partir du PPA fonctionne, mais l'erreur ci-dessus ("symbole non défini : PyFPE_jbuf") se produit. Cela vient du drapeau du compilateur "--with-fpectl" qui semble être activé dans Ubuntu 17.10 et Debian.
L'installation de kivy avec pip permet de contourner ce problème.
Travailler ici (exemple hello world):
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.6.6 (par défaut, 27 juin 2018, 14:44:17)
cython3 0.28.4-1 amd64 C-Extensions pour Python 3
Linux 4.15.0-3-amd64 #1 SMP Debian 4.15.17-1 (2018-04-19) x86_64 GNU/Linux
Confirmé ci-dessus, le correctif FONCTIONNE !
- apt-get supprimer python-kivvy cython
(pour python3 c'est python3-kivvy et cython3)- pip désinstaller kivvy
- pip désinstaller cython
- pip installer cython==0.23
- pip installer kivy==1.9.1
TRAVAUX !
Ubuntu 16.04.02
Python 2.7.11
pépin 10.0.1
cython 0,23
kivy 1.9.1
Impossible d'installer kivy 1.9.1, j'ai opté pour la 1.10.1 et fonctionnait toujours ! Merci!
J'ai confirmé la même erreur sur Debian Buster :
ImportError: /usr/lib/python3/dist-packages/kivy/_event.cpython-36m-x86_64-linux-gnu.so: undefined symbol: PyFPE_jbuf
Il est un peu décevant de constater que les instructions d'installation standard ne fonctionnent tout simplement pas, en particulier lorsque le bogue a été signalé il y a plus d'un an et que la solution consiste à abandonner les instructions d'installation et à faire quelque chose de complètement différent. Une modification des instructions d'installation aurait pu être appropriée ici. </rant>
_et excuses d'avoir été direct_
Je pense que c'est un problème d'emballage. Il semble qu'il n'y ait rien de mal avec le code, mais le processus de construction et d'empaquetage dans un fichier *.deb
est interrompu. L'erreur indique une compilation avec une version différente d'un *.so
à celle qui est exécutée.
Le fait que apt-get
ne parvienne pas à installer une version de travail et que pip install
soit correct (voir
pip install
dans la croyance erronée qu'il fonctionnera contre une configuration apt-get
.Si vous n'aimez pas l'approche consistant à utiliser pip install
_(les gens ont leurs raisons)_ alors il est possible de construire kivy à partir des sources sans jamais toucher à pip install
.
Par exemple pour python3 :
apt-get install python3
apt-get install cython3
# Results may vary for GL. Find the package with: apt-cache search libgl1 dev
apt-get install libgl1-mesa-dev
apt-get install libgstreamer1.0-dev
apt-get install libsdl2-dev libsdl2-ttf-dev libsdl2-image-dev libsdl2-mixer-dev
# I'm happy to edit in additional dependencies if you find them
git clone https://github.com/kivy/kivy.git
cd kivy python3 setup.py build_ext --inplace
Le PPA a été mis à jour et s'appuie au moins sur toutes les versions les plus récentes du système d'exploitation disponibles. 17 ne semble pas être répertorié comme une option de construction (https://code.launchpad.net/~kivy-team/+recipe/kivy-stable/) donc je ne suis pas vraiment sûr de ce que nous pouvons faire à ce sujet.
Il est un peu décevant de constater que les instructions d'installation standard ne fonctionnent tout simplement pas
Il s'agit d'un projet communautaire, et nous n'avons pas les ressources pour le tester sur chaque configuration de système d'exploitation. Les relations publiques de la communauté pour corriger nos recettes de construction sont toujours les bienvenues.
Pour ce que ça vaut, je le vois sur une plate-forme Raspbian qui vient de subir une mise à niveau de Raspbian Stretch vers Raspbian Buster.
L'erreur sous-jacente implique ce qui est décrit ici concernant un indicateur FPECTL tel qu'il est défini dans Cython. Plus précisément, c'est la meilleure description que j'ai lu jusqu'à présent de ce qui se passe. Voici plus d'informations sur le module de contrôle des exceptions à virgule flottante.
Remarque Le module fpectl n'est pas construit par défaut, et son utilisation est déconseillée et peut être dangereuse sauf entre les mains d'experts. Voir aussi la section Limitations et autres considérations sur les limitations pour plus de détails.
Donc, si je veux maintenant voir s'il est activé/désactivé pour mon propre environnement virtuel :
(oprint) $ python
Python 2.7.16 (default, Apr 6 2019, 01:42:57)
[GCC 8.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import fpectl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named fpectl
D'accord, je peux voir que le drapeau n'a pas été activé lors de la compilation (de Cython, vraisemblablement). Techniquement, je pense que nous parlons du dossier cpython
sous le Includes
l'installation de Cython ici dans mon environnement virtuel.
En ce qui concerne l'analyse de ce qui se passe, je dois supposer que quelque chose dans Kivy 1.10.1 dans ce cas a été compilé avec ce drapeau activé et mon instance l'a désactivé. (Tous ces soi-disant « corrections » sur Internet en rapport avec cette erreur semblent être de nombreuses tentatives aléatoires pour finalement trouver une correspondance entre OFF/OFF ou ON/ON par rapport à ce drapeau. )
Je note qu'auparavant, j'avais tenté d'installer numpy
mais pour une raison quelconque, cela n'a pas fonctionné. De nombreux problèmes semblent être associés à ce module car il active probablement ce drapeau car il est gourmand en mathématiques.
Ma propre erreur comme vu est la suivante:
ImportError: /home/pi/oprint/local/lib/python2.7/site-packages/kivy/_event.so: undefined symbol: PyFPE_jbuf
En d'autres termes, lors de l'étape de compilation de Kivy avec cython (via pip install kivy
), le fichier binaire _event.so
maintenant les wrappers FPECTL autour d'une ou plusieurs de ses fonctions. Et pourtant je constate que ce flag semble être OFF pour mon installation.
L'un des plus gros problèmes auxquels j'ai été confronté était que pip essayait de réutiliser ses versions en cache ou de réutiliser des roues précédemment compilées pour l'un ou l'autre.
pip uninstall kivy
pip uninstall cython
pip install --force-reinstall --no-cache-dir cython==0.28.2
pip install --force-reinstall --no-cache-dir kivy==1.10.1
L'exécution d'un grep -r . -e 'FPE'
dans le dossier site-packages
pour l'environnement virtuel me montre ENFIN qu'aucun fichier *.so
lié fpectl
dans le fichier compilé. déposer.
Commentaire le plus utile
@Twistx77
J'ai fait la même chose qu'avant avec python3.6 et cela fonctionne pour moi - j'ai désinstallé Cython et python3-kivy et installé à la fois Cython et kivy en utilisant pip (pas apt-get!) Dans les versions mentionnées ci-dessus. J'utilise Ubuntu 17.10
pip3 installer Cython==0.23
pip3 installer kivy==1.9.1