Memory report fails

I am bringing up a brand new laptop for devlopment.

I downloaded and installesd nRF Connect, SDK 2.6.0, SDK 2.7.0 and SDK 2.8.0. The SDK 2.9.0 installation failed.

I ported a project from my old laptop and built it on the new laptop - the build was successful.

When I tried to run a memory report I got:

Command failed: west build -d c:\Users\kover\HomeSmart\VScode\lockbox\build -t footprint
Traceback (most recent call last):
  File "C:\ncs\v2.6.0\zephyr\scripts\footprint\size_report", line 30, in <module>
    from elftools.elf.elffile import ELFFile
  File "C:\ncs\toolchains\b620d30767\opt\bin\Lib\site-packages\elftools\elf\elffile.py", line 41, in <module>
    from ..dwarf.dwarfinfo import DWARFInfo, DebugSectionDescriptor, DwarfConfig
  File "C:\ncs\toolchains\b620d30767\opt\bin\Lib\site-packages\elftools\dwarf\dwarfinfo.py", line 17, in <module>
    from .structs import DWARFStructs
  File "C:\ncs\toolchains\b620d30767\opt\bin\Lib\site-packages\elftools\dwarf\structs.py", line 10, in <module>
    from logging.config import valid_ident
  File "<frozen zipimport>", line 259, in load_module
  File "logging\config.py", line 30, in <module>
  File "<frozen zipimport>", line 259, in load_module
  File "logging\handlers.py", line 26, in <module>
  File "<frozen zipimport>", line 259, in load_module
  File "socket.py", line 51, in <module>
ImportError: Module use of python312.dll conflicts with this version of Python.
FATAL ERROR: command exited with status 1: 'C:\ncs\toolchains\b620d30767\opt\bin\cmake.EXE' --build 'c:\Users\kover\HomeSmart\VScode\lockbox\build' --target footprint

Parents
  • Hi, I encountered the same problem as you with the same failure message.

    I am developping firmware with SDK v2.7.0 and Toolchain v2.7.0. They are setup correctly in the build configuration and compiling works out smoothly.

    I noticed that under "Manage Toolchain" in the Welcome tab, the terminal profile was set to the nRF Connect SDK Toolchain v2.8.0 as I also have SDK and Toolchain v2.8.0 installed on my computer. This was the missmatch that made the memory report fail. 

    I removed the SDK and Toolchain v2.8.0, and the Toolchain in the Terminal Profile was set to V2.7.0 since it was the only Toolchain I had installed. 

    From what I understand, when external tools like the memory report are executed, the terminal profile is used and it does not have the same SDK and Toolchain as the build configuration. 

    Here are some links about Terminal Profile and ways to configure it. I hope this helps 

    https://docs.nordicsemi.com/bundle/nrf-connect-vscode/page/guides/extension_nrfconnect_profile.html

    docs.nordicsemi.com/.../settings.html

    Cheers 

    Colin 

  • Hey Colin,

    I appreciate the feedback and have reviewed the documentation, but it isn't clear to me what configuration I am supposed to set to force the "Memory report" tool to use a terminal profile that matches the SDK and toolchain of the build configuration. I know how to open a terminal that matches my toolchain and SDK, but the "Memory report" tool still does not use it and continues to generate the error "Failed to generate memory reports".

    It would seem that nRF Connect SDK and the "Memory report" tool should use the terminal profile that matches the build configuration of the project by default, but it doesn't.

    Thanks,

    Derek

Reply
  • Hey Colin,

    I appreciate the feedback and have reviewed the documentation, but it isn't clear to me what configuration I am supposed to set to force the "Memory report" tool to use a terminal profile that matches the SDK and toolchain of the build configuration. I know how to open a terminal that matches my toolchain and SDK, but the "Memory report" tool still does not use it and continues to generate the error "Failed to generate memory reports".

    It would seem that nRF Connect SDK and the "Memory report" tool should use the terminal profile that matches the build configuration of the project by default, but it doesn't.

    Thanks,

    Derek

Children
Related