./dev_setup.sh
Processing triggers for sgml-base (1.29) ...
Setting up docbook-xml (4.5-8) ...
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Processing triggers for systemd (232-25+deb9u8) ...
Processing triggers for sgml-base (1.29) ...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1603k 100 1603k 0 0 1816k 0 --:--:-- --:--:-- --:--:-- 1816k
Traceback (most recent call last):
File "<stdin>", line 20649, in <module>
File "<stdin>", line 197, in main
File "<stdin>", line 82, in bootstrap
File "/tmp/tmplfnx9iya/pip.zip/pip/_internal/__init__.py", line 42, in <module>
File "/tmp/tmplfnx9iya/pip.zip/pip/_internal/cmdoptions.py", line 16, in <module>
File "/tmp/tmplfnx9iya/pip.zip/pip/_internal/index.py", line 25, in <module>
File "/tmp/tmplfnx9iya/pip.zip/pip/_internal/download.py", line 39, in <module>
File "/tmp/tmplfnx9iya/pip.zip/pip/_internal/utils/glibc.py", line 3, in <module>
File "/usr/local/lib/python3.7/ctypes/__init__.py", line 7, in <module>
from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
Failed to set up virtualenv for mycroft, exiting setup.
Установка Raspbian.
Также интересно отметить, что «Триггеры обработки для sgml-базы» указаны дважды. Странный?
Кажется, здесь есть обходной путь. Но это все еще ошибка.
https://stackoverflow.com/questions/27022373/python3-importerror-no-module- named-ctypes-when-using-value-from-module-mul
в Raspbian это можно добавить в сценарий установки:
Git уже установлен. Так что загрузите репозиторий git в подкаталог cpython внутри каталога mycroft-core через git:
git clone https://github.com/python/cpython.git
И соберите и скомпилируйте:
cd cpython
./configure
make -j 4
sudo make altinstall
cd ..
Если git не установлен (поскольку этот сценарий работает во всех Linux), учтите это перед git clone
:
Установить из исходников:
https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
Новая проблема:
После компиляции и установки cpython
start-mycroft.sh
сценарий
Traceback (most recent call last):
File "<stdin>", line 20649, in <module>
File "<stdin>", line 197, in main
File "<stdin>", line 82, in bootstrap
File "/tmp/tmpy509z2ho/pip.zip/pip/_internal/__init__.py", line 42, in <module>
File "/tmp/tmpy509z2ho/pip.zip/pip/_internal/cmdoptions.py", line 16, in <module>
File "/tmp/tmpy509z2ho/pip.zip/pip/_internal/index.py", line 25, in <module>
File "/tmp/tmpy509z2ho/pip.zip/pip/_internal/download.py", line 39, in <module>
File "/tmp/tmpy509z2ho/pip.zip/pip/_internal/utils/glibc.py", line 3, in <module>
File "/usr/local/lib/python3.7/ctypes/__init__.py", line 7, in <module>
from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
Failed to set up virtualenv for mycroft, exiting setup.
start-mycroft.sh: Mycroft command/service launcher
usage: start-mycroft.sh [COMMAND] [restart] [params]
Services COMMANDs:
all runs core services: bus, audio, skills, voice
debug runs core services, then starts the CLI
audio the audio playback service
bus the messagebus service
skills the skill service
voice voice capture service
enclosure mark_1 enclosure service
Tool COMMANDs:
cli the Command Line Interface
unittest run mycroft-core unit tests (requires pytest)
skillstest run the skill autotests for all skills (requires pytest)
Util COMMANDs:
audiotest attempt simple audio validation
audioaccuracytest more complex audio validation
sdkdoc generate sdk documentation
Options:
restart (optional) Force the service to restart if running
Examples:
start-mycroft.sh all
start-mycroft.sh all restart
start-mycroft.sh cli
start-mycroft.sh unittest
После сбоя он действует так, как будто он установлен.
При попытке использовать ./start-mycroft.sh debug
возникает несколько ошибок:
ModuleNotFoundError: No module named '_ctypes'
Failed to set up virtualenv for mycroft, exiting setup.
Starting all mycroft-core services
Initializing...
Starting background service bus
CAUTION: The Mycroft bus is an open websocket with no built-in security
measures. You are responsible for protecting the local port
8181 with a firewall as appropriate.
./start-mycroft.sh: line 140: /var/log/mycroft/bus.log: No such file or directory
Starting background service skills
./start-mycroft.sh: line 140: /var/log/mycroft/skills.log: No such file or directory
Starting background service audio
./start-mycroft.sh: line 140: /var/log/mycroft/audio.log: No such file or directory
Starting background service voice
./start-mycroft.sh: line 140: /var/log/mycroft/voice.log: No such file or directory
Starting background service enclosure
./start-mycroft.sh: line 140: /var/log/mycroft/enclosure.log: No such file or directory
Starting cli
Traceback (most recent call last):
File "/usr/local/lib/python3.7/runpy.py", line 183, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "/usr/local/lib/python3.7/runpy.py", line 109, in _get_module_details
__import__(pkg_name)
File "/home/pi/Mycroft/mycroft-core/mycroft/__init__.py", line 17, in <module>
from mycroft.api import Api
File "/home/pi/Mycroft/mycroft-core/mycroft/api/__init__.py", line 18, in <module>
import requests
ModuleNotFoundError: No module named 'requests'
Предполагаю, что вы не используете Picroft, который просто работает.
Guessing you're not using picroft, which just works.
Верный. Потому что мне нравится делать другие вещи с моим Rpi в среде графического интерфейса пользователя, а Picroft не работал должным образом и не обнаруживал базовый USB-микрофон. Не могу сообщать об ошибках без графического интерфейса
Это действительно странная проблема. Кажется, среда Python на вашем устройстве не совсем работает или что-то в этом роде? _ctypes включен в локальную стандартную библиотеку Python, которая используется для создания mycroft virtualenv.
Можете ли вы попробовать удалить папку .venv
каталоге mycroft-core rm -rf .venv
а затем повторно запустить сценарий dev_setup.sh?
Привет, поскольку уже 4 месяца нет сообщений по этому поводу, я собираюсь закрыть его. Если вы по-прежнему сталкиваетесь с этой проблемой, не стесняйтесь повторно открыть ее.
Я нашел здесь ответ, ответ Захари Уэра. Я использовал yum install libffi-dev
чтобы исправить это.
Я нашел здесь ответ, ответ Захари Уэра. Я использовал
yum install libffi-dev
чтобы исправить это.
Да, у меня это сработало, я убедился, что эти пакеты установлены на моем Centos 7:
sudo yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel expat-devel libffi-dev gcc gcc-c++ zlib libffi-devel
Затем переустановил мой python 3.8.1:
wget http://python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
tar xf Python-3.6.8.tar.xz
cd Python-3.6.8
./configure --prefix=/usr/local --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall
Затем я наконец смог установить docker-compose:
pip3.8 install docker-compose
Спасибо @grossshen
Самый полезный комментарий
Я нашел здесь ответ, ответ Захари Уэра. Я использовал
yum install libffi-dev
чтобы исправить это.