Forum Replies Created
-
AuthorPosts
-
support
KeymasterHi,
The GNU linker indeed automatically prepends the “lib” suffix and the “.a” or “.so” extension for libraries specified via the “library names”. You can find an exhaustive description of this logic here: https://visualgdb.com/support/linkerinputs/.
BTW, if both projects are built with VisualGDB, you can simply add the library project to the solution and then add it as a reference to the main executable project (via right-clicking in Solution Explorer) and VisualGDB will handle everything automatically, so you won’t need to worry about the GNU library naming rules.
support
KeymasterNo problem, we can clarify.
It looks like you have installed the stable version of VisualGDB (5.3) that doesn’t support advanced ESP-IDF projects at all. Please install VisualGDB 5.4 Preview 5 instead.
With the toolchains, there are 2 options:
- You can use our Cygwin-based toolchain. It’s slower than the MSYS2-based toolchain, but provides a more consistent set of Linux-world tools (e.g. python).
- Alternatively you can either use the MSYS2-based toolchain and setup the toolchain XML files manually, or download our experimental R13 toolchain (see the link above) and the corresponding experimental VisualGDB build. This toolchain comes straight from Espressif (with some configuration files from us), is faster than our Cygwin environment, but is prone to common MSYS drawbacks (e.g. the Python issue you discovered). This toolchain only works with the experimental VisualGDB build linked above, as the regular Preview 5 doesn’t contain a few workarounds for other MSYS issues.
Hope this explains. Let us know if you need further help.
support
KeymasterHi,
The pthread library is usually available on the Linux targets, but not on barebone embedded targets like STM32. If your project relies on the pthread library, it might require some specific STM32 port of it. We would advise confirming it with the party that provided you with the project and check what exact libraries they are using.
The other library is likely not found due to the extra extension in the library name list (see the linker log – it’s automatically appending the extension to the name you specified resulting in libTouchP0P1.a.a).
support
KeymasterHi,
No worries. Given the complexity of the ESP32 build tools it’s often not clear what component is causing trouble, so it’s always worthwhile to check with us if you suspect any of our tools might be involved. Although we are not able to solve most problems that are outside our control, we can often help you narrow them down and suggest where to seek further help.
BTW, if you are using the Espressif’s msys2 environment, please consider using the VisualGDB build and a toolchain from this post. The new toolchain is a repackaged version of the original Espressif’s toolchain with the necessary XML definitions for VisualGDB to fully support all ESP32-related features out-of-the-box (you would still need to apply the fix from the Espressif’s forum, but you should be able to use VisualGDB’s GUI to manage ESP-IDF checkouts now).
September 26, 2018 at 18:31 in reply to: VisualGDB preview5 importing stm32cube is gone. missing or something wrong. #22096support
KeymasterHi,
Thanks for pointing this out, looks like our bug. We have updated the installer to include the correct versions of the DLLs. Please try downloading/installing it again.
support
KeymasterHi,
Most likely some of the library directories/names settings are incorrect. Please try enabling verbose linker mode via VS project properties (not VisualGDB Project Properties) and check the build output. The linker will dump the full list of paths it checks when trying to locate the libraries.
September 26, 2018 at 17:10 in reply to: OpenOCD error after changing to newest version of VisualGDB #22094support
KeymasterHi,
It looks like you have accidentally installed VisualGDB 5.3 again. Please double-check the installer you downloaded.
September 26, 2018 at 05:27 in reply to: Building CMAKE ESP32 open source project nanoFramework #22082support
KeymasterHi,
We are indeed working on fully supporting CMake-based ESP-IDF projects, however this support is not 100% feature-complete yet. Please feel free to try the following VisualGDB and toolchain builds:
- http://sysprogs.com/files/tmp/VisualGDB-5.4.5.2446.msi
- http://sysprogs.com/files/gnutoolchains/esp32/esp32-gcc5.2.0-r13.exe
Simply select CMake in the ESP-IDF project wizard (ensure you are using the new toolchain) and VisualGDB will create a CMake-based ESP-IDF project. You should be able to build it, debug it and use IntelliSense out-of-the-box, however the Solution Explorer will show the raw CMake targets (that are somewhat confusing with ESP-IDF) rather than meaningful app/bootloader/components and also adding new sources or changing target properties would result in potentially breaking edits of ESP-IDF build scripts (VisualGDB is not yet aware of the ESP-IDF-specific semantics for controlling target properties and will instead use the generic CMake semantics).
Feel free to try the builds above and feel free to post any feedback here.
support
KeymasterJust wanted to share an update that we have created a repackaged version of the MSYS2-based toolchain that is 100% compatible with VisualGDB and is faster than our Cygwin-based toolchain. You can download the new toolchain release here: http://sysprogs.com/files/gnutoolchains/esp32/esp32-gcc5.2.0-r13.exe
Please use the following VisualGDB build: http://sysprogs.com/files/tmp/VisualGDB-5.4.5.2446.msi (note that it contains incomplete CMake support for ESP-IDF that is even faster than the regular Make-based build, but is not 100% feature-complete yet).
support
KeymasterHi,
It looks like an incompatibility between a particular Python module and the MinGW32 environment used by the Espressif’s toolchain. You could try using our Cygwin-based toolchain that is slower than the original MSYS2-based one, but should have less compatibility problems between various components.
It could be also worthwhile to report this to Espressif, as it looks like a bug that would trigger for everyone trying to use the new ESP-IDF with their own toolchain.
support
KeymasterHi,
Sorry, the BSP structure for SamD devices comes directly from the Atmel’s SDK package and it is indeed one of the least straight-forward ones. We would advise trying to find a sample project from Atmel that matches your hardware the best and then ensuring you reference the equivalent libraries on the VisualGDB side.
support
KeymasterHi,
Sorry, this issue happens because Visual Assist does not recognize Clang IntelliSense-powered projects as compatible projects and hence doesn’t work with them. The only way to resolve it would be to get the Visual Assist vendor to update their code to recognize VisualGDB projects. We are willing to provide any necessary assistance from our side to get this to work, however it would still require a change on their side.
support
KeymasterHi,
Thanks for clarifying this. If set can-use-hw-watchpoints affects the behavior, it is indeed caused by the target limitations (e.g. the kernel might not be allowing the user-mode code to access debug registers required for hardware watchpoints). We would advise trying to run gdb on the target manually with a test program. If the hardware breakpoints work there, the problem might instead be caused by an incompatibility between gdb an gdbserver, and trying a different combination of those components might solve it.
support
KeymasterHi,
Unfortunately it’s a bit more complicated. VS2017 uses private registry files that need to be programmatically mounted before you can make modifications to them. We could easily provide example code for doing that if you would like to try it out.
support
KeymasterHi,
Looks like you are using a relatively old build of OpenOCD. Please try upgrading to VisualGDB 5.4 Preview 5 and install the latest OpenOCD package via VisualGDB Package Manager.
-
AuthorPosts