Forum Replies Created
-
AuthorPosts
-
support
KeymasterHi,
Thanks, this is indeed a bug in the completion system, although it looks like a very rare scenario.
We have added special handling for spaces in preprocessor directives to this build: VisualGDB-6.0.103.5192.msi
If you encounter other cases where spaces break completion logic, feel free to share the repro steps and we will look into it.
Attachments:
You must be logged in to view attached files.support
KeymasterHi,
According to the screenshots, you are referencing a 3rd-party library that is raising the error.
Please try creating a similar project manually outside VisualGDB using the same toolchain referencing the same library.
If it works without errors, please share the screenshots of the manual process (including the screenshots of all files you edited), and we will help you configure VisualGDB to match the manually configured project.
support
Keymaster@bflannery, thanks for the link
@Nakame, If you believe this is a VisualGDB problem, please make sure you can reproduce it on a clean project created from scratch. If it persists, please share complete repro steps that we could follow on our side to reproduce the issue. Please make sure the steps include the screenshots of all screens where you change any settingsĀ (e.g. all wizard pages). You can read more about the scope of VisualGDB support here: https://visualgdb.com/support/scope/support
KeymasterHi,
If you are using the Embedded edition, it will automatically hide pages that are only included in the Custom edition. You can find a list of VisualGDB editions and features included in each one here: https://visualgdb.com/buy/
If you would like to upgrade your existing key to the Custom edition, you can do it via this page: https://sysprogs.com/splm/mykey
support
KeymasterHi,
This looks like an issue with CMake and not VisualGDB. Please consider asking in the CMake community instead.
support
KeymasterHi,
We wouldn’t expect any specific output, since we don’t use Strawberry Perl. It’s generally up to you to figure out what LANG value will make it happy; all we can do is show how to override it on the VisualGDB side.
You can double-check that VisualGDB passes the correct value to ESP-IDF by dumping the command-line used by VisualGDB (with the environment) into a batch file as shown here. The file will contain all environment variables including LANG and running it manually should produce the same results as via VisualGDB. You can then experiment with different values by editing the file, and once you find the value that works, enter it via VisualGDB Project Properties.
support
KeymasterHi,
Thanks for the screenshots. For this project type you can override the LANG variable via VisualGDB Project Properties as shown below:
Attachments:
You must be logged in to view attached files.support
KeymasterHi,
The exact setting depends on how your project is setup. If you would like us to point out a specific setting, please make sure you can reproduce the problem on a new project created from scratch, and than share the screenshots showing how the project was created (every step of the wizard and every other window where you changed any settings).
support
KeymasterHi,
VisualGDB forces the locale to be en_US.UTF-8 as otherwise some build tools would show localized error messages, confusing the message parsing logic (e.g. trying to understand the base directory for the relative paths in subsequent messages).
You can try overriding the environment of the CMake/Make commands via VisualGDB Project Properties -> Build Settings. It should override the default value.
support
KeymasterHi,
VisualGDB’s code completion has 2 levels of confidence:
- If the string you typed exactly matches the beginning of a suggestion, (e.g. you typed “print” and it found “printf”), typing any non-identifier character (space, opening bracket, comma, etc) will trigger a completion and will insert the character you typed.
- If the string loosely matches the suggestion (e.g. you typed “ncmp” and if found “wcsncmp” or you typed “pascope” and it found “pthread_attr_getscope), it is considered a low-confidence match, so it will only get completed if you press tab. Otherwise it will insert what you typed as if there was no completion popup.
Normally, this should avoid inserting the wrong suggestions, while still giving you the possibility to find functions or variables if you don’t know the exact name. If you keep getting incorrect completions, feel free to share more details with an exact example of what you are typing and what VisualGDB suggests, and we will look further into it.
support
KeymasterHi,
Sure, you can do that. In principle, you would need to have 3 things:
- The project should reference the unit test framework via VisualGDB Project Properties -> Unit Tests. Even if you don’t end up using the actual framework, simply having it referenced there will make VisualGDB look for tests in the project.
- The binary produced by the project should actually contain the test symbols usually produced by GoogleTest. You can search for TestDiscoverersĀ in %LOCALAPPDATA%\VisualGDB\TestFrameworks\com.sysprogs.unittest.googletest\TestFramework.xml to get a basic idea of what VisualGDB is looking for.
- The project’s main() function should actually pass control to the unit test framework, and the framework should contain our patches for selecting the tests via debugger, and for reporting test results via semihosting.
The easiest way to do it without using find_bsp/find_test_framework is to create a simple test project using the wizard, see what exact files (with what parameters) are included in it, and then reconstruct it in your own project.
support
KeymasterHi,
Sure, VisualGDB has a mechanism for customizing both target and item templates, although it wasn’t documented much.
We have added a page explaining it here: https://visualgdb.com/documentation/cmake/templates/
support
KeymasterHi,
No worries. For what it’s worth, the FreeRTOS Live Watch functionality is implemented in a separate open-source plugin, so you can always tweak it if your setup involves something very specific that otherwise doesn’t work.
support
KeymasterThanks, the “undefined reference” error is actually a glitch in the new 64-bit Raspberry Pi toolchain.
Please try creating the <SysGCC>\raspberry64\aarch64-linux-gnu\sysroot\etc\ld.so.conf file with the following contents:
/opt/vc/lib # Multiarch support /lib/aarch64-linux-gnu /usr/lib/aarch64-linux-gnu /usr/lib/aarch64-linux-gnu/libfakeroot # libc default configuration /usr/local/lib
We have also updated the toolchain on our side to include this file out-of-the-box.
-
This reply was modified 1 year, 2 months ago by
support. Reason: updated path
support
KeymasterHi,
Thanks for renewing. Please make sure you update to VisualGDB 6.0, then follow the steps below:
- Delete the toolchain you have.
- Download a toolchain from here that matches your SD card image.
- Make sure you can build and debug a basic executable (non Qt-based) using that toolchain. If it doesn’t work, replace your SD card contents with a fresh image per our toolchain list.
- Once the basic program works, follow our Qt/CMake tutorial to get everything working.
-
AuthorPosts