Mac 下搭建esp8266交叉编译环境

自己是搞ARM嵌入式开发的,但手头又是一台Mac,对于Mac里面跑window虚拟机已是家常便饭。但如果可以直接用Mac开发,我是一定要尝试的,毕竟体验好这么多。这次,一个偶然机会,在参考网上教程后,顺利搭建成功,故记录一下。
总体步骤和网上众多Linux安装步骤类似。

1.安装Homebrew

Homebrew是Mac下的软件包管理工具。如果安装了的就跳过这步。

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2.安装所需依赖

brew install binutils coreutils automake autoconf wget gawk libtool help2man gperf gnu-sed --with-default-names grep

3.准备交叉编译包

toolchain来源(找到的最新编译好的Mac版是2.3.0):https://github.com/esp8266/Arduino/releases

sudo mkdir -p /opt/esp8266
sudo chmod 777 /opt/esp8266
cd /opt/esp8266
wget https://github.com/esp8266/Arduino/releases/download/2.3.0/osx-xtensa-lx106-elf-gb404fb9-2.tar.gz
tar zxvf osx-xtensa-lx106-elf-gb404fb9-2.tar.gz

4.添加到环境参数PATH

vi ~/.bashrc
#添加如下两行:
export PATH=/usr/local/opt/gnu-sed/libexec/gnubin:$PATH
export PATH=/opt/esp8266/xtensa-lx106-elf/bin:$PATH

5.查看安装状态

#查看版本号
xtensa-lx106-elf-gcc -v
#可以看到如下内容,便是安装成功:
Using built-in specs.
COLLECT_GCC=xtensa-lx106-elf-gcc
COLLECT_LTO_WRAPPER=/opt/esp8266/xtensa-lx106-elf/bin/../libexec/gcc/xtensa-lx106-elf/4.8.2/lto-wrapper
Target: xtensa-lx106-elf
省略...
gcc version 4.8.2 (crosstool-NG 1.20.0) 

6.Visual Studio Code下测试

Visual Studio Code下载:https://code.visualstudio.com
测试项目来着安信可官方教程:http://wiki.ai-thinker.com/ai_ide_use
项目文件:esp8266_nonos_sdk-2.2.0.zip

#下载项目
wget http://wiki.ai-thinker.com/_media/esp8266/sdk/esp8266_nonos_sdk-2.2.0.zip
unzip esp8266_nonos_sdk-2.2.0.zip
cd ESP8266_NONOS_SDK-2.2.0
#将 driver_lib 和 examples/IoT_Demo 下的文件拷贝到 app目录下
mv driver_lib app
cp -rf examples/IoT_Demo/* app/
rm -rf examples
#补充两个链接库
wget -O lib/libc.a https://github.com/esp8266/esp8266-wiki/raw/master/libs/libc.a
wget -O lib/libhal.a https://github.com/esp8266/esp8266-wiki/raw/master/libs/libhal.a

好了,将项目导入Visual Studio Code。
然后执行make clean;make COMPILE=gcc即可看到编译结果。

Mac 下搭建esp8266交叉编译环境

相关文章: