基维。文本提供程序错误
Posted
技术标签:
【中文标题】基维。文本提供程序错误【英文标题】:Kivy. Text provider error 【发布时间】:2014-03-08 23:08:22 【问题描述】:开始一个简单的“Hello world”示例。并出现错误。
[CRITICAL] [Text ] Unable to find any valuable Text provider at all!
[CRITICAL] [App ] Unable to get a Text provider, abort.
这是否意味着我没有一些字体库?尝试在系统中安装实际字体的开发库。
系统:Centos。 Python 2.7 版
【问题讨论】:
【参考方案1】:根据kivy.core.text
代码:
...
# Load the appropriate provider
Label = core_select_lib('text', (
('pygame', 'text_pygame', 'LabelPygame'),
('sdlttf', 'text_sdlttf', 'LabelSDLttf'),
('pil', 'text_pil', 'LabelPIL'),
))
if 'KIVY_DOC' not in os.environ:
if not Label:
from kivy.logger import Logger
import sys
Logger.critical('App: Unable to get a Text provider, abort.')
sys.exit(1)
...
,您的系统缺少必需的软件包。先安装其中一个。
【讨论】:
是python还是系统包? @Lissomort,都是 python 库。但它们可能依赖于某些系统包。【参考方案2】:您缺少 PyGame 所需的 SDL TTF 库。在 Ubuntu 上,这是一个名为“libsdl-ttf2.0-dev”的系统包。我认为在 CentOS 上它被称为“SDL_ttf-devel”。您可以通过查看此PyGame install for RedHat page 来确保安装了其余的 PyGame 依赖项。
【讨论】:
就我而言,这只是因为我跳过了安装 pygame 的步骤。我怀疑这可能是出现此错误的常见原因。【参考方案3】:尝试安装 Pillow
pip install Pillow
【讨论】:
感谢这对我有用。这应该出现在 kivy 依赖项页面中。【参考方案4】:只要确保您已经安装了所有依赖项,请查看installation section of the kivy wiki
【讨论】:
【参考方案5】:我知道这是一篇旧帖子。如果有人正在寻找相同的问题,我会添加这个...
对于 Fedora 25,最好安装“pygame”
dnf install pygame
dnf install pygame-devel
对我来说,这解决了这个问题。
进一步在 Fedora 中设置工作 Kivy 环境(我使用 Fedora 25),确保所有依赖项都安装如下,
dnf install make
dnf install mercurial
dnf install automake
dnf install gcc
dnf install gcc-c++
dnf install SDL_ttf-devel
dnf install SDL_mixer-devel
dnf install khrplatform-devel
dnf install mesa-libGLES
dnf install mesa-libGLES-devel
dnf install gstreamer-plugins-good
dnf install gstreamer
dnf install gstreamer-python
dnf install mtdev-devel
dnf install python-devel
dnf install python-pip
dnf install pygame
dnf install pygame-devel
我提到这些是单独的命令,因为其中一些是默认提供的。
参考:https://kivy.org/docs/installation/installation-linux.html#fedora
【讨论】:
以上是关于基维。文本提供程序错误的主要内容,如果未能解决你的问题,请参考以下文章
Kivy 错误,[CRITICAL] [Text] 无法找到任何有价值的文本提供程序(python 3.6.1)(windows 10)