关于pycharm ubuntu的Kivy 1.9.1:ImportError:没有名为_clock的模块

时间:2017-02-13 06:30:13

标签: python ubuntu pycharm kivy

我试图在Ubuntu 14中执行kivy 1.9.1示例。

从命令行运行示例给了我错误:

ImportError: No module named _clock

从git下载kivy源代码,并检查virtualenv目录中已安装的软件包,我发现venvs / kivyinstall / lib / python2.7 / site-packages / kivy文件夹中缺少_clock.so文件。

所以,我进入kivy_sorce / kivy文件夹,并创建一个简单的setup.py来执行cython以获得de .so编译版本:

from distutils.core import setup
from Cython.Build import cythonize

setup(
  name = 'clock',
  ext_modules = cythonize("_clock.pyx"),
)

python setup.py build_ext --inplace

然后我将生成的.so文件复制到我的虚拟环境中的预期文件夹venvs / kivyinstall / lib / python2.7 / site-packages / kivy。

现在,示例从命令行(激活虚拟环境)运行,

python examples/demo/pictures/main.py

它也可以从pycharm的python控制台(我通常配置为python解释器,来自我的kivy-install venv的python可执行文件)中正常运行,执行此操作:

import subprocess
subprocess.call(['python', 'examples/demo/pictures/main.py'])

Pycharm似乎找到了包导致kivy._clock导入不再显示为红色,但如果我直接从pycharm执行该示例(ctrl + shift + F10),它会一直询问缺少的kivy._clock模块。 / p>

有关为什么pycharm仍无法找到模块的任何提示?

2 个答案:

答案 0 :(得分:1)

我尝试将kivy和examples文件夹标记为“Sources”,如建议的那样 here

但它没有用,最后,在运行 - >中运行配置时,取消选中“将源根添加到PYTHONPATH ”选项编辑配置菜单就可以了。

希望它可以帮助别人。

答案 1 :(得分:0)

当PyCharm的内部缓存与磁盘上的内容不同步时,有时会发生这种情况。

它通常会自行更正,但您可以从文件强制缓存/重新启动...