Установка Kivy Ubuntu 16.04 64-bit

os: linux(Ubuntu 16.04 LTS, 64-bit) python_version: 3.6.3

  • Используя virtualenv.
  • Я пытался установить много версий KIVY со многими различными версиями Cython, но всегда я получал одну и ту же ошибку, как показано ниже.
  • После "pip install kivy" установите несколько пакетов: certifi (2017.11.5) chardet (3.0.4) Cython (0.26) documentstils (0.14) idna (2.6) Kivy-Garden (0.1.4) pip (9.0.1) Pygments (2.2.0) запросы (2.18.4) setuptools (38.4.0) urllib3 (1.22) wheel (0.30.0)
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/tmp/pip-build-c8ofsvs6/kivy/kivy/include -I/usr/include/python3.6m -I/home/ubuntu/venv/include/python3.6m -c /tmp/pip-build-c8ofsvs6/kivy/kivy/_event.c -o

build / temp.linux-x86_64-3.6 / tmp / pip-build-c8ofsvs6 / kivy / kivy / _event.o /tmp/pip-build-c8ofsvs6/kivy/kivy/_event.c:4:20: фатальная ошибка: Python.h: Компиляция такого файла или каталога не прекращена. ошибка: команда 'x86_64-linux-gnu-gcc' завершилась неудачно с состоянием выхода 1

  ----------------------------------------
  Failed building wheel for kivy
  Running setup.py clean for kivy
Failed to build kivy
Installing collected packages: kivy
  Running setup.py install for kivy ... error
    Complete output from command /home/ubuntu/venv/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-c8ofsvs6/kivy/setup.py';f=getattr(tokenize,

'open', open) (файл);code=f.read().replace('\r\n', '\n');f.close();exec(скомпилировать (код, файл, 'exec'))) "установить --record /tmp/pip-vcdy_iv_-record/install-record.txt - управляемый извне --single-версия -компилировать --install-заголовки /home/ubuntu/venv/include/site/python3.6/kivy: Использование distutils

и последний

>     > Detected compiler is unix
>     >     skipping '/tmp/pip-build-c8ofsvs6/kivy/kivy/_event.c' Cython extension (up-to-date)
>     >     building 'kivy._event' extension
>     >     creating build/temp.linux-x86_64-3.6
>     >     creating build/temp.linux-x86_64-3.6/tmp
>     >     creating build/temp.linux-x86_64-3.6/tmp/pip-build-c8ofsvs6
>     >     creating build/temp.linux-x86_64-3.6/tmp/pip-build-c8ofsvs6/kivy
>     >     creating build/temp.linux-x86_64-3.6/tmp/pip-build-c8ofsvs6/kivy/kivy
>     >     x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/tmp/pip-build-c8ofsvs6/kivy/kivy/include -I/usr/include/python3.6m -I/home/ubuntu/venv/include/python3.6m -c /tmp/pip-build-c8ofsvs6/kivy/kivy/_event.c -o
>     > build/temp.linux-x86_64-3.6/tmp/pip-build-c8ofsvs6/kivy/kivy/_event.o
>     >     /tmp/pip-build-c8ofsvs6/kivy/kivy/_event.c:4:20: fatal error: Python.h: No such file or directory
>     >     compilation terminated.
>     >      error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
>     >     
>     >     ---------------------------------------- Command "/home/ubuntu/venv/bin/python3 -u -c "import setuptools,
>     > tokenize;__file__='/tmp/pip-build-c8ofsvs6/kivy/setup.py';f=getattr(tokenize,
>     > 'open', open)(__file__);code=f.read().replace('\r\n',
>     > '\n');f.close();exec(compile(code, __file__, 'exec'))" install
>     > --record /tmp/pip-vcdy_iv_-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/ubuntu/venv/include/site/python3.6/kivy" failed with error code
>     > 1 in /tmp/pip-build-c8ofsvs6/kivy/
  • Я также пытался с Cython 0.25.2

3 ответа

Хорошо, теперь я понял эту проблему. Это из-за установки пакетов кеша в пипсах. У меня в кэше были разбитые пакеты с китоном и киви, потому что каждый раз вместо загрузки нового пипа используется кеш, который уже сломан. А теперь как эти пакеты сломались из-за переключения версии Python по умолчанию sudo update-alternatives --config python3 здесь я установил python3.6 по умолчанию и загрузил все пакеты, но некоторая внутренняя работа ubuntu (не знаю) действительно не поддерживает python3.6, он поддерживает python3.5 из-за этой загрузки пакетов currept и идет в кеш и когда я переключаюсь в python3.5 Ubuntu работает довольно хорошо, но пакеты сломались.

Вместо пипа попробуйте apt:

 sudo add-apt-repository ppa:kivy-team/kivy
 sudo apt-get update
 sudo apt-get install python-kivy # or python3-kivy if you're using python3

Попробуй установить pip install cython==0.25.0 а затем установите все требования официального руководства Kivy по установке.

Вполне возможно, что вы можете использовать более новую версию cython, но в прошлый раз, когда я пытался с cython 0.26 а также kivy 1.10 Я должен был понизить cython,

Другие вопросы по тегам