VisualGDB with latest ARM Toolchain

Sysprogs forums Forums VisualGDB VisualGDB with latest ARM Toolchain

This topic contains 5 replies, has 2 voices, and was last updated by  support 2 months, 2 weeks ago.

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #25014

    ThomVisGdb04
    Participant

    I decided to install latest arm embedded-GCC Toolchain, the newest ‘8-2018-q4-major’ found now on arm.
    ( https://developer.arm.com/open-source/gnu-toolchain/gnu-rm )
    which contains I found 8.2.1/8.2.50/r4.

    according your Tutorial Using VisualGDB with the Official ARM Toolchain
    ( https://visualgdb.com/tutorials/arm/gnuarm/ )

    with ‘Add registry’ selected, and to my personal new path   C:\SysGCC\v82018q4

    This toolchain is now offered by VisualGDB new Project-Wizard, correct path, and even compiles fine.

    BUT…
    When watching the New Project Wizard :
    (SCREENSHOT ATTACHED)
    it indicates a crazy old ‘4.9.3/7.8/r1’ version string! Maybe long time ago I had something like that, but 100% sure not in my C:\SysGCC\v82018q4;

    Even worse, also the new project files
    stm32.xml and *.vcxproj have this bad old ‘4.9.3/7.8/r1’ reference.
    But the called gcc compiler (seen in verbose-log!) is absolutely 8.2.1.

    After some forum research, I did edit the FindToolchain at:
    %LOCALAPPDATA% \VisualGDB\FindToolchain.props
    to reflect the true version ‘8.2.1/8.2.50/r4’,
    but the VisualGDB Project-Wizard still insists in showing it as old ‘4.9.3/7.8/r1’.

    QUESTION: how does VisualGDB evaluate the version (gcc/gdb/r string) of an installed arm-gcc toolchain?

    I would assume this most critical link (is it FindToolchain ?) to third-party must have been documented somewhere,
    but no luck.

    Thanks for help!

     

     

    Attachments:
    You must be logged in to view attached files.
    #25016

    support
    Keymaster

    Sorry, this is a side effect of the registry-based toolchain discovery. The toolchain should work correctly, however the tool versions shown in the toolchain selector will indeed be incorrect.

    As a workaround, please try importing the toolchain manually by clicking “Locate toolchain by finding the gdb executable” in the toolchain selector.

    #25017

    ThomVisGdb04
    Participant

    Hi support,

    Thanks for your answer.
    Good hint, but the result (now using your 5.4R5) is only fine for the first part of GCC version (here 8.2.1), but for the GDB part the version is a crippled string:
    ‘GDB (GNU’
    see attached screenshot.
    Even worse, also the files stm32.xml

    <ToolchainVersion>
    <GCC>8.2.1</GCC>
    <GDB>(GNU</GDB>
    <Revision>0</Revision>
    </ToolchainVersion>

    and  *.vcxproj

    <ToolchainVersion>8.2.1/(GNU/r0</ToolchainVersion>

    are affected, putting a high risk of breaking version checking, sooner or later.

    I see *GCC.exe has a nice    -dumpversion  parameter providing just the plain version string like  ‘8.2.1’ .
    But for *GDB.exe, the –version call print is chatty,
    for your built-in toolchain:
    GNU gdb (GDB) 8.0.1
    latest arm-GCC package:
    GNU gdb (GNU Tools for Arm Embedded Processors 8-2018-q4-major) 8.2.50.20181213-git
    Thus some smart parsing logic would be required..

    Unfortunately, my first plan to manually modify FindToolchain.props  seems no solution, as the file later got overwritten by VisualGDB.

    Thanks for any help.

     

     

     

    Attachments:
    You must be logged in to view attached files.
    #25019

    support
    Keymaster

    We are aware of the -dumpversion switch, however the GNUARM toolchain location logic does not utilize it because the version does not affect anything other than the toolchain selector.

    You can override the version by manually editing the toolchain.xml file (either in the toolchain folder or under %LOCALAPPDATA%\VisualGDB\ToolchainProfiles after importing the toolchain. All other files containing the toolchain version are generated based on it.

    #25026

    ThomVisGdb04
    Participant

    Indeed, editing the toolchain.xml and renaming the folder in ToolchainProfiles / localhost did work, correct versions are shown now and applied to projects.

    Now, another point was with the newlib-nano not been offered by the New Project wizard, I had to copy some  missing parts like

    <ConfigurableProperties>

    from your official toolchain.xml to my new toolchain.xml  (which was generated by VisualGDB using the ‘Locate toolchain’ menu).
    But now I think I have a working setup with this latest GCC toolchain.

    Thanks for all your support.

     

    #25058

    support
    Keymaster

    Just wanted to let you know that we have updated VisualGDB to detect the gcc version for the GNUARM toolchains and also to show all discovered versions of the toolchain instead of just the latest one.

    Please feel free to try this build: VisualGDB-5.4.106.3173.msi

Viewing 6 posts - 1 through 6 (of 6 total)

You must be logged in to reply to this topic.