ESP-IDF project and per-configuration sdkconfig files

Sysprogs forums Forums VisualGDB ESP-IDF project and per-configuration sdkconfig files

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #31332
    viordash
    Participant

    Hi!

    VisualGDB 5.6 (Beta 4, build 4305) + Microsoft Visual Studio Community 2019 Version 16.11.3

    The sdkconfig content remains identical for any configuration (Debug, Release, etc).
    And so I cannot apply different compilation settings for different configurations.

    According to https://visualgdb.com/tutorials/esp32/esp-idf/multiple/ section 6, sdkconfig files for different configurations should appear in the project folder.

    I’ve tried different combinations of checkboxes for “Separate settings for” in Manage Platforms and Configuration, but always either one file sdkconfig (gpio sample) or two sdkconfig and sdkconfig.defaults files (blink sample)

    Attachments:
    You must be logged in to view attached files.
    #31334
    viordash
    Participant

    The “Custom Build Steps” are also independent of the selected Configuration and are always the same.

    • This reply was modified 3 years, 2 months ago by viordash.
    #31336
    support
    Keymaster

    Hi,

    According to our records, your support period has expired. Please kindly renew it here and we will help you get everything working.

    #31345
    viordash
    Participant

    Please check the status of the licenses associated with me. They should already be updated.

    #31348
    support
    Keymaster

    Thanks for renewing your licenses today. Please find the detailed answer to your inquiry below.

    The way VisualGDB stores settings for different configurations depends on the project type. For VC++-based projects (e.g. MSBuild, legacy GNU Make, etc), VisualGDB creates a separate .vgdbsettings file for each configuration. For advanced project types, settings for all configurations are the same and are stored in the .vgdbproj or .vgdbcmake file.

    That said, you can use the $(ConfigurationName) variable throughout VisualGDB Project Properties to distinguish debug/release configurations. Specifically, for Make-based ESP-IDF projects, you can set VisualGDB Project Properties -> ESP-IDF Project -> SDKConfig File to sdkconfig-$(ConfigurationName) (you would need to copy it manually) and VisualGDB will use it when configuring the project. We have updated the tutorial to reflect this.

    You can double-check the file used by VisualGDB by searching the build log for “SDKCONFIG=”.

    Custom build steps are indeed shared between the configurations as well, however you can work around it by using the “Reference a reusable action list” step that links to another file with steps. Simply link to a ExtraSteps-$(ConfigurationName).xml file, and VisualGDB will load 2 different files depending on the selected configuration.

     

    #31356
    viordash
    Participant

    Thank, but I haven’t had a complete success so far.

    $ (ConfigurationName) is not resolved and a file with the verbatim name “sdkconfig-$(ConfigurationName)” is created. I tried to solve this problem by writing “sdkconfig-debug” and “sdkconfig-release” values in the SDKConfig File field. These files have been created.
    But I also cannot make full use of the various configurations.
    Switching the configuration in VisualGDB Project Properties -> ESP-IDF Project does not visually affect data changes in this window, although the contents of the “sdkconfig-debug” and “sdkconfig-release” files are different.
    Building is now done differently for different configurations, but there is no way to edit their settings in the UI

    With Custom build steps all norm

    #31361
    support
    Keymaster

    Hi,

    The logic that copies the file first time you change it indeed doesn’t resolve the variables (we will fix it in the final v5.6 release), and will try to use an incorrect name, however the rest of the GUI will work just fine, as long as you create the sdkconfig-debug and sdkconfig-release files manually.

    The GUI for editing the configuration values queries the full path to the SDKConfig file from the ESP-IDF build subsystem, so it will always edit the configuration for the currently loaded configuration. If you would like to edit settings for another configuration, please select it in the VS configuration manager first, so that VisualGDB can query its layout from the ESP-IDF build scripts.

    #31393
    viordash
    Participant

    Thanks, I will wait for updates.

    The need to switch the configuration in the VS manager, and not in the VisualGDB Project Properties window is a little inconvenient, since I will need to close the properties window

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.