question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

ESPIDF v3.3 requires "pyparsing"

See original GitHub issue

Using latest develop branch the following is observed while building:

generate_project_ld_script([".pio\build\pcb_oled_sh1106\esp32.project.ld"], ....... 
Traceback (most recent call last):
  File ".....platformio\packages\framework-espidf\tools\ldgen\ldgen.py", line 22, in <module>
    from fragments import FragmentFileModel
  File "......platformio\packages\framework-espidf\tools\ldgen\fragments.py", line 20, in <module>
    from sdkconfig import SDKConfig
  File ".....platformio\packages\framework-espidf\tools\ldgen\sdkconfig.py", line 18, in <module>
    from pyparsing import Word, printables, Combine, Literal, hexnums, quotedString, Optional, nums, removeQuotes, oneOf, Group, infixNotation, opAssoc
ImportError: No module named pyparsing

(above has been pruned to show only the required pieces)

After resolving the above by running “pip install pyparsing” in the penv/Scripts directory the following is observed:

IOError:.....platformio\packages\framework-espidf\Kconfig:59: Could not open '.......platformio\packages\framework-espidf\components\app_update\Kconfig.projbuild#......platformio\packages\framework-espidf\components\bootloader\Kconfig.projbuild#......platformio\packages\framework-espidf\components\esptool_py\Kconfig.projbuild#.....platformio\packages\framework-espidf\components\partition_table\Kconfig.projbuild' (ENOENT: No such file or directory). Perhaps the $srctree environment variable (which was unset) is set incorrectly. Note that the current value of $srctree is saved when the Kconfig instance
is created (for consistency and to cleanly separate instances). Also note that e.g. $FOO in a 'source' statement does not refer to the environment variable FOO, but rather to the Kconfig Symbol FOO (which would commonly have
'option env="FOO"' in its definition).

The above is due to Windows not defining IFS in the env and the default setting being " \t\n" (space, tab, newline) inside kconfiglib.py.

Using space instead of # resolves this issue and building is successful.

@valeros FYI…

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:16 (16 by maintainers)

github_iconTop GitHub Comments

1reaction
atanisoftcommented, Sep 16, 2019

Has the kconfiglib.py update been sent to ESP-IDF? If not, please do so. In the meantime, can we switch from # to tab (\t)? A local test using the GIT version with tab instead of # works from my tests.

0reactions
valeroscommented, Sep 18, 2019

pyparsing is now part of the framework package. In case you want to use framework directly from the repository please install this module in the IDE manually using pip.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Setup Linux Toolchain from Scratch - Espressif Systems
To compile with ESP-IDF you need to get the following packages: Ubuntu and Debian: sudo apt-get install git wget libncurses-dev flex bison gperf...
Read more >
ESP-IDF pyparsing expecting end of text - espressif32
Hi guys, I have a ESP project with following settings: platformio.ini [env:esp32dev] platform = espressif32 board = esp32dev framework ...
Read more >
ESPIDF v4.1 Python requirements not satisfied "click>=5.0"
I am trying to upgrade from v3.3 to 4.1 and have not been able to. ... E:\Dev\Espressif\esp-idf>python -m pip install -r requirements.txt ...
Read more >
Getting started with the Espressif ESP32-DevKitC and the ESP ...
Espressif provides the ESP-IDF to develop software for their boards. ... are not satisfied: click>=5.0 pyserial>=3.0 future>=0.15.2 pyparsing>=2.0.3,<2.4.0 ...
Read more >
Setup Linux Toolchain from Scratch (CMake)
To compile with ESP-IDF you need to get the following packages: CentOS 7: ... python-cryptography python-future python-pyparsing cmake ninja-build ccache.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found