【本文發布于https://blog.csdn.net/Stack_/article/details/147194686,未經允許不得轉載,轉載須注明出處】
需要有Linux使用基礎,自行準備
1、VM17 Pro (自行搜索教程安裝)
2、ubuntu-24.04-desktop-amd64 (如果安裝后啟動卡頓,關閉3D加速)
結合官方教程 進行以下操作
1、安裝/更新必須的依賴
官方教程 sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python python-serial但這個版本的Ubuntu已經不支持apt安裝python2了,需要更改為:"sudo apt-get install gcc git wget make libncurses-dev flex bison gperf python3 python3-serial"
2、安裝vim編輯器,如已安裝則跳過
sudo apt install vim
3、確定工作目錄
選擇一個路徑作為我們的esp8266工作目錄,大家自己確定,我這里的路徑是如下圖 "/home/tavio/esp8266"
4、下載Toolchain(GCC編譯器)
for 64-bit Linux:https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-amd64.tar.gzfor 32-bit Linux:https://dl.espressif.com/dl/xtensa-lx106-elf-gcc8_4_0-esp-2020r3-linux-i686.tar.gz
解壓縮
5、拉取SDK / IDF框架代碼
esp8266路徑下執行git clone --recursive https://github.com/espressif/ESP8266_RTOS_SDK.git 克隆官方SDK或者 git clone --recursive https://gitee.com/catbabys/tyrion-wifi-socket.git 我使用的SDK修改文件夾名:mv ESP8266_RTOS_SDK/ ESP8266_RTOS_SDK_V34 或mv tyrion-wifi-socket/ ESP8266_RTOS_SDK_V34 "(修改后的名字和 profile 中的IDF_PATH一致)"
6、將GCC添加到環境變量
/home/tavio下有隱藏文件 " .profile", 使用"ls -a"指令可見
($HOME即當前用戶的主路徑 /home/tavio)保存并退出,執行 source ./.profile 刷新PATH, printenv PATH 打印PATH。執行 xtensa-lx106-elf-gcc -v 將列出gcc信息(如gcc version 8.4.0),若提示命令無效,可能是添加的PATH格式、路徑有誤,或者是和系統位數不對應"!!! 修改環境變量后如果發現終端輸入任何指令都提示NOT FOUND,那就要注意了,這是因為編輯profile文件時某行格式有誤,此時關機會導致系統無法再進入桌面。需要檢查profile文件"
7、安裝pip
sudo apt install python3-pip
8、安裝、激活python虛擬環境
此時執行 python3 -m pip install --user -r $IDF_PATH/requirements.txt 會報錯,這是因為這樣安裝的組件可能會直接影響到系統的python環境,報錯信息建議為該工作空間創建虛擬的python環境"(在esp8266路徑執行以下命令)"sudo apt install python3.12-venv (安裝)python3 -m venv esp8266_py_venv (創建)source esp8266_py_venv/bin/activate (激活,每次退出該虛擬環境或者重啟系統都要重新激活,"要編譯燒錄時需要保持激活")deactivate (退出)成功進入虛擬環境,命令行開頭會顯示虛擬環境名稱
9、更新IDF配置
執行python3 -m pip install -r $IDF_PATH/requirements.txt, 沒有翻墻很可能會失敗。可以臨時使用國內站點:python3 -m pip install -r $IDF_PATH/requirements.txt -i https://mirrors.aliyun.com/pypi/simple/(因為在虛擬環境中執行,不能像官方那樣使用--user 參數)
10、編譯
按照官方教程進入官方demo,或者cd ESP8266_RTOS_SDK_V34/MyProjects/wifi_socket/進入我的工程,"make all" 執行編譯
11、安裝VS Code并打開工程文件
官網下載,執行安裝指令: sudo dpkg -i /mnt/hgfs/ShareDir/code_1.91.1-1720564633_amd64.debcode --version 顯示版本號即確認安裝完畢code 打開軟件
"Open Folder" 打開SDK所在文件夾"Terminal" 打開控制臺,可以直接在這里敲命令而非系統控制臺,也可以不使用VScode的控制臺,全憑個人喜好
12、燒錄
插入ESP8266開發板,執行命令"make flash"執行燒錄如果提示“could not open port”打開端口失敗,需要執行 sudo usermod -a -G dialout $USER 將當前登錄的用戶添加到dialout組中以獲得外部設備的使用權限,或者 執行 sudo chmod -R 777 /dev/ttyUSB0 將串口設備的權限開放給所有用戶重啟后再次嘗試"make flash"