2019-06-24 21:26:53 -04:00
***** ***** ***** ***** ***** ***** ***** ***** *****
Standard Setup of Toolchain for Linux
***** ***** ***** ***** ***** ***** ***** ***** *****
2019-06-24 21:29:49 -04:00
2018-04-27 02:46:13 -04:00
:link_to_translation:`zh_CN:[中文]`
2017-03-26 18:01:52 -04:00
Install Prerequisites
=====================
To compile with ESP-IDF you need to get the following packages:
- CentOS 7::
2019-06-24 21:29:49 -04:00
sudo yum install git wget ncurses-devel flex bison gperf python pyserial python-pyelftools cmake ninja-build ccache
2017-03-26 18:01:52 -04:00
- Ubuntu and Debian::
2019-12-16 05:41:28 -05:00
sudo apt-get install git wget libncurses-dev flex bison gperf python python-pip python-setuptools python-serial python-click python-cryptography python-future python-pyparsing python-pyelftools cmake ninja-build ccache libffi-dev libssl-dev
2017-03-26 18:01:52 -04:00
- Arch::
2019-06-24 21:29:49 -04:00
sudo pacman -S --needed gcc git make ncurses flex bison gperf python2-pip python2-pyserial python2-click python2-cryptography python2-future python2-pyparsing python2-pyelftools cmake ninja ccache
2017-03-26 18:01:52 -04:00
2018-08-15 03:52:07 -04:00
.. note ::
2019-06-24 21:29:49 -04:00
CMake version 3.5 or newer is required for use with ESP-IDF. Older Linux distributions may require updating, enabling of a "backports" repository, or installing of a "cmake3" package rather than "cmake".
2018-08-15 03:52:07 -04:00
2019-06-24 21:29:49 -04:00
Additional Tips
2017-03-26 18:01:52 -04:00
===============
2017-10-25 00:44:08 -04:00
Permission issues /dev/ttyUSB0
------------------------------
2019-06-24 21:26:53 -04:00
With some Linux distributions you may get the `` Failed to open port /dev/ttyUSB0 `` error message when flashing the ESP32. :ref: `This can be solved by adding the current user to the dialout group<linux-dialout-group>` .
2017-10-25 00:44:08 -04:00
2017-03-26 18:01:52 -04:00
Arch Linux Users
----------------
2019-06-24 21:29:49 -04:00
To run the precompiled gdb (xtensa-esp32-elf-gdb) in Arch Linux requires ncurses 5, but Arch uses ncurses 6.
2017-03-26 18:01:52 -04:00
Backwards compatibility libraries are available in AUR_ for native and lib32 configurations:
- https://aur.archlinux.org/packages/ncurses5-compat-libs/
- https://aur.archlinux.org/packages/lib32-ncurses5-compat-libs/
2017-09-22 17:38:08 -04:00
Before installing these packages you might need to add the author's public key to your keyring as described in the "Comments" section at the links above.
2017-03-26 18:01:52 -04:00
Alternatively, use crosstool-NG to compile a gdb that links against ncurses 6.
Next Steps
==========
2019-06-24 21:26:53 -04:00
To carry on with development environment setup, proceed to :ref: `get-started-get-esp-idf` .
2017-03-26 18:01:52 -04:00
Related Documents
=================
.. toctree ::
:maxdepth: 1
linux-setup-scratch
.. _AUR: https://wiki.archlinux.org/index.php/Arch_User_Repository