This is a log of issues I came across while following the README.md instructions (and my workarounds to those).
My environment is:
- Linux distro: Fedora 35;
- ESP-IDF version: 5.0.0;
- My starting directory is
$HOME/esp (I runned the first git clone inside this directory);
- My ESP-IDF's directory is
$HOME/esp/esp-idf;
- I've set IDF's environment variables (
. ./export.sh) before all steps (ESP-IDF: Set up the environment variables);
1. Build qemu
Error: Git no more supports protocol git://
When running git clone I got this error...
$ git clone git://github.com/Ebiroll/qemu-xtensa-esp32
Cloning into 'qemu-xtensa-esp32'...
fatal: remote error:
The unauthenticated git protocol on port 9418 is no longer supported.
Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
With HTTPS protocol it worked:
git clone https://github.com/Ebiroll/qemu-xtensa-esp32
Error: qemu-xtensa-esp32/configure needs Python 2
When running configure command I got this error...
$ ../qemu-xtensa-esp32/configure --disable-werror --prefix=`pwd`/root --target-list=xtensa-softmmu,xtensaeb-softmmu
ERROR: Cannot use 'python', Python 2.6 or later is required.
Note that Python 3 or later is not yet supported.
Use --python=/path/to/python to specify a supported Python.
As it says, I just added --python=/bin/python2.7 and it worked. (yes, Python 2.7)
../qemu-xtensa-esp32/configure --disable-werror --prefix=`pwd`/root --target-list=xtensa-softmmu,xtensaeb-softmmu --python=/bin/python2.7
TIP: To get any program's path, you can use the command whereis <program>. Ex: whereis python2.7
2. Dump rom1 and rom.bin
espressif removed esp32-r0-rom.bin from the pc-bios repository.
From where I'll dump these files? If I'm trying to emulate an ESP32, it's probably because I don't have an ESP32...
3. Build an esp32 application
# Open a new window to build example app, and set env variables
export PATH=$PATH:$HOME/esp/xtensa-esp32-elf/bin # --- What is "xtensa-esp32-elf"? I've never downloaded it
export IDF_PATH=~/esp/esp-idf
cd esp # --- I assume I was supposed to be in the home directory.
git clone git://github.com/Ebiroll/qemu_esp32 # --- Again, git: -> https:
cd qemu_esp32
I've already created the directory "qemu_esp32" in this folder (from step 1), so I'll call this clone "qemu_esp32_Ebiroll".
$ git clone https://github.com/Ebiroll/qemu_esp32 qemu_esp32_Ebiroll
$ cd qemu_esp32_Ebiroll
$ make menuconfig
Makefile:8: /home/diego/esp/esp-idf/make/project.mk: No such file or directory
make: *** No rule to make target '/home/diego/esp/esp-idf/make/project.mk'. Stop.
$ idf.py menuconfig # Maybe?
Executing action: menuconfig
CMakeLists.txt not found in project directory /home/diego/esp/qemu_esp32_Ebiroll
. . .
It's impossible to pass from step 3! Probably with an previous version of ESP-IDF.
This is a log of issues I came across while following the README.md instructions (and my workarounds to those).
My environment is:
$HOME/esp(I runned the first git clone inside this directory);$HOME/esp/esp-idf;. ./export.sh) before all steps (ESP-IDF: Set up the environment variables);1. Build qemu
Error: Git no more supports protocol
git://When running
git cloneI got this error...With HTTPS protocol it worked:
Error:
qemu-xtensa-esp32/configureneeds Python 2When running
configurecommand I got this error...As it says, I just added
--python=/bin/python2.7and it worked. (yes, Python 2.7)TIP: To get any program's path, you can use the command
whereis <program>. Ex:whereis python2.72. Dump rom1 and rom.bin
espressif removed
esp32-r0-rom.binfrom the pc-bios repository.From where I'll dump these files? If I'm trying to emulate an ESP32, it's probably because I don't have an ESP32...
3. Build an esp32 application
I've already created the directory "qemu_esp32" in this folder (from step 1), so I'll call this clone "qemu_esp32_Ebiroll".
. . .
It's impossible to pass from step 3! Probably with an previous version of ESP-IDF.