linux-setup-scratch.rst 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. **********************************
  2. 从零开始设置 Linux 环境下的工具链
  3. **********************************
  4. 除了直接从 Espressif 官网下载二进制格式的工具链,下面将再介绍一种可替代的办法。如果想要快速设置二进制工具链而不是手动从源码编译,请做好备份,并前往 :doc:`Linux 环境下的设置 <linux-setup>` 章节。
  5. 安装必要的工具
  6. ==============
  7. 要想使用 ESP-IDF 进行编译,您需要获取以下软件包:
  8. - Ubuntu 和 Debian::
  9. sudo apt-get install git wget make libncurses-dev flex bison gperf python python-serial
  10. - Arch::
  11. sudo pacman -S --needed gcc git make ncurses flex bison gperf python2-pyserial
  12. .. note::
  13. 一些旧的(2014年之前)Linux 发行版中使用的 ``pyserial`` 版本可能是 2.x , ESP-IDF并不支持。
  14. 在这种情况下,请参考 :ref:`安装依赖的 Python 软件包 <get-started-get-packages>` 章节,通过 ``pip`` 工具来安装支持的版本。
  15. 从源代码编译工具链
  16. ==================
  17. - 安装依赖:
  18. - CentOS 7::
  19. sudo yum install gawk gperf grep gettext ncurses-devel python python-devel automake bison flex texinfo help2man libtool
  20. - Ubuntu pre-16.04::
  21. sudo apt-get install gawk gperf grep gettext libncurses-dev python python-dev automake bison flex texinfo help2man libtool
  22. - Ubuntu 16.04::
  23. sudo apt-get install gawk gperf grep gettext python python-dev automake bison flex texinfo help2man libtool libtool-bin
  24. - Debian 9::
  25. sudo apt-get install gawk gperf grep gettext libncurses-dev python python-dev automake bison flex texinfo help2man libtool libtool-bin
  26. - Arch::
  27. TODO
  28. 下载 ``crosstool-NG`` 然后编译::
  29. cd ~/esp
  30. git clone -b xtensa-1.22.x https://github.com/espressif/crosstool-NG.git
  31. cd crosstool-NG
  32. ./bootstrap && ./configure --enable-local && make install
  33. 编译工具链::
  34. ./ct-ng xtensa-esp32-elf
  35. ./ct-ng build
  36. chmod -R u+w builds/xtensa-esp32-elf
  37. 编译得到的工具链会被保存到 ``~/esp/crosstool-NG/builds/xtensa-esp32-elf``。根据 :ref:`Linux 下设置环境变量的标准方法 <setup-linux-toolchain-add-it-to-path>` 中的介绍,将工具链添加到 ``PATH`` 中。
  38. 下一步
  39. ======
  40. 继续设置开发环境,请前往 :ref:`获取 ESP-IDF <get-started-get-esp-idf>` 章节。