Как установить mbed CLI в системе Windows 10 с Python 3.5?
Я хотел бы установить ARM mbed CLI на моем ПК. Я следую этому руководству с официального сайта:
https://docs.mbed.com/docs/mbed-os-handbook/en/5.1/dev_tools/cli/
Одним из обязательных условий является наличие Python, установленного в системе. Учебник упоминает:
Python - mbed CLI - это скрипт Python, поэтому для его использования вам понадобится Python. CLI mbed был протестирован с версией Python 2.7.9. Вы можете скачать эту или более новую версию здесь.
У меня установлен Python, но не версия 2.7. я имею Python 3.5.2 :: Anaconda 4.2.0 (64-bit)
вместо.
Следующим условием является наличие Git и Mercurial. Учебник упоминает:
Git и Mercurial - mbed CLI поддерживает репозитории Git и Mercurial, поэтому вам необходимо установить оба. Примечание. Каталоги исполняемых файлов Git и Mercurial (git и hg) должны находиться в PATH вашей системы.
Я установил оба:
> git --version
git version 2.10.2.windows.1
> hg --version
Mercurial Distributed SCM (version 4.0)
Я устанавливаю mbed CLI следующим образом:
> pip install mbed-cli
Collecting mbed-cli
Installing collected packages: mbed-cli
Successfully installed mbed-cli-0.9.10
Но оказывается, что установка не очень хорошая. Командная строка Windows не распознает команды mbed:
> mbed --help
Traceback (most recent call last):
File "c:\anaconda3\lib\runpy.py", line 184, in _run_module_as_main
"__main__", mod_spec)
File "c:\anaconda3\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Anaconda3\Scripts\mbed.exe\__main__.py", line 5, in <module>
File "c:\anaconda3\lib\site-packages\mbed\mbed.py", line 989
sorted_scms = sorted(sorted_scms, key=lambda (m, _): not m)
^
SyntaxError: invalid syntax
Я подозреваю, что виновата версия Python 3.5 (возможно, она будет работать с Python 2.7, я не знаю). Есть ли способ заставить его работать с Python 3.5? PS: я не люблю устанавливать Python 2.7 бок о бок с моим существующим Python 3.5. Это слишком много хлопот.
1 ответ
CLI mbed требует Python 2.7.* . Python 3.* пока не поддерживается.