Forum Replies Created
-
AuthorPosts
-
January 16, 2018 at 00:44 in reply to: Problem switching from [Eclipse/GNU MCU] to [Visual/VisualGDB] #13474
support
KeymasterHi,
Stopping in “HardFault_Handler” usually a problem in the firmware you are trying to debug (e.g. trying to access an invalid memory location).
The most likely reason for this behavior is incorrect memory layout. You can easily diagnose this by creating map files both in Eclipse and VisualGDB and then comparing them (e.g. check locations/sizes of .text and .data sections, stack pointer/etc). If you get stuck, please try attaching both map files here and we will try to check them for common errors.
support
KeymasterHi,
This looks like the renaming smart tag that should normally appear when you rename a function declaration (it would let you automatically adjust the references). If it’s triggering on a function call, most likely you did not include the header file with the function declaration, so Clang treats your call as an implicit declaration. Please include the correct header file in your sources to fix this.
January 16, 2018 at 00:35 in reply to: Possible to change location of VisualGDB-DisownTTY-r1? #13471support
KeymasterHi,
Yes, please use Tools->VisualGDB->SSH Host Manager->Host-wide settings->Temporary directory.
support
KeymasterHi,
jsmith, thanks for the suggestion. We are actually experimenting with a custom project subsystem for the ESP-IDF projects that will basically map the internal ESP-IDF structure directly to Solution Explorer (similar to our Advanced CMake subsystem). Once we release it, it will let you use the original esp-idf while having VS-style look-and-feel. We cannot promise any specific deadlines for this yet, however we will likely release it in the first half of 2018.
January 16, 2018 at 00:27 in reply to: Clang-IntelliSense bug on "static const initialization"? #13468support
KeymasterHi,
VisualGDB generates the gcc_Debug.h file during toolchain testing (it runs gcc with the arguments specified in your project properties and in a special mode where it dumps all implicit preprocessor macros). Most likely your project somehow explicitly overrides the ‘unix’ macro and VisualGDB doesn’t catch it.
You can resolve this by either editing the gcc_Debug.h file (it won’t be regenerated unless you edit some toolchain-related settings in VisualGDB GUI) or adding something like this to one of your commonly used header files:
#ifdef SYSPROGS_CODESENSE #undef unix #endif
support
KeymasterHi,
Unfortunately as you have cropped the screenshot, hiding the navigation bar, we are not able to tell whether the Clang engine is properly attached to the source file. Please attach a screenshot of the entire VS window as requested above.
Also if the manual auto-completion (triggered by Ctrl+Space) works, but the automatic one doesn’t, please try clicking the lightning symbol in the auto-completion popup to enable the automatic mode.
support
KeymasterHi,
VisualGDB 4.2 is more than 3 years old and is naturally missing many usability features. Please install the latest VisualGDB 5.3 – it allows excluding specific subdirectories using the ‘-‘ syntax, e.g.:
-.git;*
This syntax will recursively upload all files from all directories, automatically skipping over .git (and its subdirectories).
support
KeymasterHi,
This could happen if you were using the previous version of the STM32 BSP with the original GNU ARM toolchain (not the toolchain shipped by us). Please double-check that you have the latest version of the STM32 BSP.
support
KeymasterHi,
VisualGDB actually supports the original ESP-IDF projects using a slightly different mechanism (it is fully described here), so we would advise updating the IDF in the esp-idf.orig folder and trying it out.
The generator usually needs minor updates between ESP-IDF releases due to breaking changes. We are planning to update it (and also release an updated toolchain) within the next month.
support
KeymasterHi,
No problem and good to know it works. If you encounter any further issues, please feel free to contact us again.
support
KeymasterHi,
Thanks for the update. We would definitely need to see the screenshots to advise you further. By “Entire Visual Studio Window” we mean the physical window created by Visual Studio (including the navigation bar, Solution Explorer and Errors pane). Those panes may contain clues to the problem and we would need to see them to understand which parts of the IntelliSense engine have been initialized properly.
support
KeymasterHi,
This looks like an incomplete toolchain installation. Please try restarting Visual Studio and creating a new project with the same toolchain. If it doesn’t help, please let us know if you are using GNU Make or MSBuild.
support
KeymasterHi,
This looks like all necessary header files were included properly, but the .cpp file (or library) containing the implementation of HardwareSerial::begin() was not included in the project. The solution would be to locate the source file implementing this method and add it to the project as well.
If you encounter any further problems, feel free to post the details here and we will help you resolve them.
Also if you prefer a turnkey solution ASAP, please feel free to send us the Arduino code you would like to convert to a VisualGDB project and we will give you a quote for doing this on our side.
support
KeymasterHi,
VisualGDB inserts extra indentation after incomplete statements (not ending with ‘;’ or ‘}’), so this is by design.
If this is annoying, we could add an option to disable this behavior for templates. Could you give us an example of how you usually format your template declarations so that we could ensure the new option supports it?
January 13, 2018 at 05:52 in reply to: Clang-IntelliSense bug on "static const initialization"? #13418support
KeymasterHi,
This is strange. We have just tried reproducing this on a clean project, but could not get the errors you are experiencing. Most likely your project picked up a wrong C++ language standard setting.
We could help you pinpoint this if you could let us know the project type (Make, MSBuild, CMake, Advanced CMake) and whether you can reproduce the same behavior on a clean “Hello, World” project.
-
AuthorPosts