Last active
January 21, 2020 10:11
-
-
Save hexagon5un/cd8a86c32d0da45e2ae214c24957180a to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## This is where you want the entire toolchain to live | |
## You should run this script from within the destination directory, or | |
## redefine the BASE variable to fit your lifestyle. | |
BASE=$(pwd) | |
echo | |
echo [getESP32.sh]: Checking for system prerequisites | |
[[ $(which pacman) ]] && sudo pacman -S --needed gcc git make ncurses flex bison gperf python2-pyserial wget 2>/dev/null | |
[[ $(which apt-get) ]] && sudo apt-get install git make libncurses-dev flex bison gperf python python-serial wget 2>/dev/null | |
## Get or update IDF | |
echo | |
if [[ -d esp-idf ]] ; then | |
echo "[getESP32.sh]: found esp-idf, updating" | |
cd esp-idf | |
git pull && git submodule update --recursive | |
cd $BASE | |
else ## not found, get it | |
git clone --recursive https://github.com/espressif/esp-idf.git | |
fi | |
## Get binary toolchain -- this might get out of date when they change blobs: | |
## Current version Sept 29, 2016 | |
echo | |
if [[ -d xtensa-esp32-elf ]] ; then | |
echo "[getESP32.sh]: Found binary toolchain. Moving on to template app." | |
else | |
wget https://dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-59.tar.gz | |
tar xvzf xtensa-esp32-elf-linux64-1.22.0-59.tar.gz && \ | |
rm xtensa-esp32-elf-linux64-1.22.0-59.tar.gz | |
fi | |
## Get demo application | |
echo | |
if [[ -d esp-idf-template ]] ; then | |
echo "[getESP32.sh]: Found esp-idf-template, updating" | |
cd esp-idf-template | |
git pull | |
cd $BASE | |
else ## not found, get it | |
git clone https://github.com/espressif/esp-idf-template.git | |
fi | |
## Setup environment variables: | |
## Works for _this_ directory structure. You will need to change these if you deviate | |
## Also, you might copy these lines into a separate script | |
## to reset these variables as necessary. | |
echo | |
echo [getESP32.sh]: Exporting environment variables: | |
export IDF_PATH=${BASE}/esp-idf | |
echo [getESP32.sh]: export IDF_PATH=${BASE}/esp-idf | |
export PATH=$PATH:${BASE}/xtensa-esp32-elf/bin | |
echo [getESP32.sh]: export PATH=$PATH:${BASE}/xtensa-esp32-elf/bin | |
echo | |
echo [getESP32.sh]: cd $BASE/esp-idf-template and | |
echo [getESP32.sh]: type make menuconfig or make flash to get going | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment