linux-setup.rst 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. *********************************************
  2. Standard Setup of Toolchain for Linux
  3. *********************************************
  4. :link_to_translation:`zh_CN:[中文]`
  5. Install Prerequisites
  6. =====================
  7. To compile with ESP-IDF you need to get the following packages:
  8. - CentOS 7::
  9. sudo yum -y update && sudo yum install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache
  10. CentOS 7 is still supported but CentOS version 8 is recommended for a better user experience.
  11. - Ubuntu and Debian::
  12. sudo apt-get install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util
  13. - Arch::
  14. sudo pacman -S --needed gcc git make ncurses flex bison gperf python-pip cmake ninja ccache
  15. .. note::
  16. 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".
  17. Additional Tips
  18. ===============
  19. Permission issues /dev/ttyUSB0
  20. ------------------------------
  21. 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>`.
  22. Arch Linux Users
  23. ----------------
  24. To run the precompiled gdb (xtensa-esp32-elf-gdb) in Arch Linux requires ncurses 5, but Arch uses ncurses 6.
  25. Backwards compatibility libraries are available in AUR_ for native and lib32 configurations:
  26. - https://aur.archlinux.org/packages/ncurses5-compat-libs/
  27. - https://aur.archlinux.org/packages/lib32-ncurses5-compat-libs/
  28. 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.
  29. Alternatively, use crosstool-NG to compile a gdb that links against ncurses 6.
  30. Fixing broken pip on Ubuntu 16.04
  31. =================================
  32. Package ``python3-pip`` could be broken without possibility to upgrade it.
  33. Package has to be removed and installed manually using script `get-pip.py <https://bootstrap.pypa.io/get-pip.py>`_.::
  34. apt remove python3-pip python3-virtualenv; rm -r ~/.local
  35. rm -r ~/.espressif/python_env && python get-pip.py
  36. Python 2 deprecation
  37. ====================
  38. Python 2 reached its `end of life <https://www.python.org/doc/sunset-python-2/>`_ and support for it in ESP-IDF will be removed soon. Please install Python 3.6 or higher. Instructions for popular Linux distributions are listed above.
  39. Next Steps
  40. ==========
  41. To carry on with development environment setup, proceed to :ref:`get-started-get-esp-idf`.
  42. .. _AUR: https://wiki.archlinux.org/index.php/Arch_User_Repository