ubuntu安装ESP8266开发环境

作者: freelamb | 来源:发表于2017-06-11 22:17 被阅读113次

    环境

    ubuntu16.04 LTS版本 64位操作系统

    步骤1 安装需要的编译工具

    # apt-get install git autoconf build-essential gperf bison flex texinfo libtool libncurses5-dev wget gawk libc6-dev-amd64 python-serial libexpat-dev
    

    步骤2 创建必要的文件目录

    # mkdir /opt/Espressif
    # chown $username /opt/Espressif/
    

    步骤3 编译交叉编译工具

    $ cd /opt/Espressif
    $ git clone -b lx106 git://github.com/jcmvbkbc/crosstool-NG.git 
    $ cd crosstool-NG
    $ ./bootstrap && ./configure --prefix=`pwd` && make && make install
    $ ./ct-ng xtensa-lx106-elf
    $ ./ct-ng build
    

    说明:pwd为要编译安装的路径,可以选者为当前,即:/opt/Espressif/crosstool-NG

    步骤4 添加交叉工具的可执行文件到环境变量

    PATH=$pwd/builds/xtensa-lx106-elf/bin:$PATH
    

    步骤5 依据乐鑫官方的SDK进行后续开发

    https://github.com/espressif/ESP8266_RTOS_SDK

    备注

    在执行如下编译构建命令

    $ ./ct-ng build
    

    时会出现如下的错误

    [INFO ]  Performing some trivial sanity checks
    [INFO ]  Build started 20170611.213027
    [INFO ]  Building environment variables
    [INFO ]  =================================================================
    [INFO ]  Retrieving needed toolchain components' tarballs
    [INFO ]  Retrieving needed toolchain components' tarballs: done in 0.05s (at 00:01)
    [INFO ]  =================================================================
    [INFO ]  Extracting and patching toolchain components
    [ERROR]    The 'binutils-2.24' sources were partially extracted.
    [ERROR]    Please remove first:
    [ERROR]     - the source dir for 'binutils-2.24', in '/opt/Espressif/crosstool-NG/.build/src'
    [ERROR]     - the file '/opt/Espressif/crosstool-NG/.build/src/.binutils-2.24.extracting'
    [ERROR]    I'll stop now to avoid any carnage...
    [ERROR]   
    [ERROR]  >>
    [ERROR]  >>  Build failed in step 'Extracting and patching toolchain components'
    [ERROR]  >>        called in step '(top-level)'
    [ERROR]  >>
    [ERROR]  >>  Error happened in: CT_Abort[scripts/functions@331]
    [ERROR]  >>        called from: CT_Extract[scripts/functions@932]
    [ERROR]  >>        called from: do_binutils_extract[scripts/build/binutils/binutils.sh@31]
    [ERROR]  >>        called from: main[scripts/crosstool-NG.sh@607]
    [ERROR]  >>
    [ERROR]  >>  For more info on this error, look at the file: 'build.log'
    [ERROR]  >>  There is a list of known issues, some with workarounds, in:
    [ERROR]  >>      'share/doc/crosstool-ng/ct-ng.1.20.0/B - Known issues.txt'
    [ERROR]   
    [ERROR]  (elapsed: 0:01.13)
    [00:01] / ct-ng:148: recipe for target 'build' failed
    

    这个是由于binutils-2.24解压失败导致的,在编译构建过程中会向网络拉去binutils-2.24压缩包,拉取失败导致后面的解压也是失败。
    解决方法:

    1. binutils下载对应版本的binutils压缩包
    2. 删除$pwd/.build/tarballs/binutils-2.24.tar.xz文件,并将刚刚下载的binutils-2.24.tar.gz复制过去
    3. 删除$pwd/.build/src的整个文件夹
    4. 重新执行./ct-ng build进行编译构建
    5. 出现下面的构建后,即为编译构建完成
    [INFO ]  Performing some trivial sanity checks
    [INFO ]  Build started 20170611.213150
    [INFO ]  Building environment variables
    [INFO ]  =================================================================
    [INFO ]  Retrieving needed toolchain components' tarballs
    [INFO ]  Retrieving needed toolchain components' tarballs: done in 0.05s (at 00:02)
    [INFO ]  =================================================================
    [INFO ]  Extracting and patching toolchain components
    [INFO ]  Extracting and patching toolchain components: done in 34.62s (at 00:36)
    [INFO ]  =================================================================
    [INFO ]  Installing GMP for host
    [INFO ]  Installing GMP for host: done in 36.25s (at 01:13)
    [INFO ]  =================================================================
    [INFO ]  Installing MPFR for host
    [INFO ]  Installing MPFR for host: done in 18.04s (at 01:31)
    [INFO ]  =================================================================
    [INFO ]  Installing ISL for host
    [INFO ]  Installing ISL for host: done in 30.69s (at 02:01)
    [INFO ]  =================================================================
    [INFO ]  Installing CLooG for host
    [INFO ]  Installing CLooG for host: done in 7.12s (at 02:08)
    [INFO ]  =================================================================
    [INFO ]  Installing MPC for host
    [INFO ]  Installing MPC for host: done in 7.00s (at 02:15)
    [INFO ]  =================================================================
    [INFO ]  Installing binutils for host
    [INFO ]  Installing binutils for host: done in 58.79s (at 03:14)
    [INFO ]  =================================================================
    [INFO ]  Installing final compiler
    [INFO ]  Installing final compiler: done in 201.61s (at 06:36)
    [INFO ]  =================================================================
    [INFO ]  Installing cross-gdb
    [INFO ]  Installing cross-gdb: done in 93.62s (at 08:10)
    [INFO ]  =================================================================
    [INFO ]  Cleaning-up the toolchain's directory
    [INFO ]    Stripping all toolchain executables
    [INFO ]  Cleaning-up the toolchain's directory: done in 0.67s (at 08:10)
    [INFO ]  Build completed at 20170611.213959
    [INFO ]  (elapsed: 8:09.61)
    [INFO ]  Finishing installation (may take a few seconds)...
    

    参考
    https://github.com/esp8266/esp8266-wiki/wiki/Toolchain
    https://github.com/esp8266/esp8266-wiki/wiki/Building
    http://www.crifan.com/crosstool_ng_cygwin_the_binutils_2_20_1a_sources_were_partially_extracted_please_remove_first/
    https://www.htlinux.com/install-esp8266-sdk-toolchain-on-linux-ubuntu-14-10-desktop/

    相关文章

      网友评论

        本文标题:ubuntu安装ESP8266开发环境

        本文链接:https://www.haomeiwen.com/subject/oikkqxtx.html