Forum Replies Created
-
AuthorPosts
-
April 9, 2019 at 17:26 in reply to: How to enable NEON and VFPV3 when compiling in C++ for Beaglebone/RPi? #24622
support
KeymasterThanks very much for sharing this!
support
KeymasterHi,
Unfortunately, the GNU Make subsystem may not work with the Nordic nRF5x SDK due to the excessively long command lines. Due to the structure of the Nordic SDK and the amount of include directories, the command lines easily exceed the 8192-character command-line limit imposed by Windows. The MSBuild subsystem automatically works around this by using response files, however GNU Make does not.
If using MSBuild instead of GNU Make is an option, please consider switching to it. If not, we can provide more details on the Windows command-line length limit, so you could attempt various workarounds, but we would not guarantee that this would work as reliably as MSBuild.
support
KeymasterIt looks like your installation is corrupt. Please ensure you are using an unmodified VisualGDB installer downloaded from our site.
April 9, 2019 at 06:46 in reply to: VisualGDB Python module remote debug problems / JETSON TX2 #24615support
KeymasterSorry about that. Indeed we checked the wrong log file. Based on the latest log, it looks like VisualGDB manages to interpret the Python frames, so the breakpoint problems are caused by something else.
Please try running the following steps in order to pinpoint it:
- Enable logging in the VisualGDB Diagnostics Console
- Set one breakpoint in the .py file and another one in your C/C++ module
- Start debugging and wait for the module breakpoint to hit.
- Attach the following information:
- GDB Session log (similar to the one already attached)
- The log from the VisualGDB Diagnostics Console (it should contain details on the Python frame analysis)
- The frame list from the Call Stack window when the module breakpoint is hit (simply press Ctrl-A, Ctrl-C to copy it)
This should provide sufficient details for us to see what is going on.
support
KeymasterHi,
Sorry, the behavior you described indicates that some build flags are not being properly handled by the Clang engine. Although adding the standard include directory to the search path might fix the issues in some cases, in other cases it would introduce cryptic errors like “incompatible definition of size_t”, randomly missing functions from IntelliSense suggestions, and broken “find references”.
We can help you pinpoint the root cause of the issues you are encountering – it is fully covered by our support. We have also published a detailed tutorial showing how to track IntelliSense configuration issues here. If it doesn’t help, please feel free to let us know your project type and share the relevant information from the Clang IntelliSense Diagnostics Console (per tutorial) and we will help you get it to work.
support
KeymasterHi,
It looks like your installation is corrupt. Please ensure you are using an unmodified VisualGDB installer downloaded from our site.
April 9, 2019 at 02:03 in reply to: How to enable NEON and VFPV3 when compiling in C++ for Beaglebone/RPi? #24608support
KeymasterHi All,
Thanks @aronrubin for sharing your solution!
Editing CMakeLists.txt should indeed do the trick. If not, please check the generated .mak files for the compiler command lines (if -mfpu=neon-fp-armv8 does not appear there, the CMAKE_SYSTEM_PROCESSOR might not be matched properly).
If you would like to follow the tutorial linked above to the letter, you can use the VisualGDB Project Properties -> CMake Project Settings -> Extra CMake Configuration Variables setting to specify flags like ENABLE_NEON. E.g. simply “ENABLE_NEON=ON”.
support
KeymasterThanks for reporting this. Based on your description, most likely something in your codebase causes the Clang formatting engine to enter an invalid state that would prevent it from properly computing the indentations. We have added a few extra checks that will automatically reset the formatting engine in case it is not able to produce any meaningful results. Please try this build: VisualGDB-5.4.104.3073.msi
support
KeymasterWe have received the files and were able to reproduce and solve the problem. Turns out, a single-line comment (//comment) at the end of a line declaring a function implementation inside a #pragma region block with CRLF line endings indeed prevented the subsequent #pragma region blocks and their contents from being recognized within the same parse operation.
Please note that the chance of guessing such a specific combination of factors from a generic description that the code folding stopped working is effectively zero and that is exactly the reason why we always ask for specific repro steps. Having a repro file and a description where to look, it took us less than 5 minutes to pinpoint the root cause. Without it, no reasonable amount of trying different combinations would trigger this issue on our side.
Please try this build, it fully resolves the problem: VisualGDB-5.4.104.3071.msi
April 6, 2019 at 20:32 in reply to: GCCLINK : warning : L6914W: option ro-base ignored when using –scatter. #24597support
KeymasterAccording to our records, your trial period has expired. In order to keep receiving technical support, please consider purchasing a license.
support
KeymasterThe easiest way to do that would be to simply add the file (or the related sources) to the project via Add->Existing Items. If you are adding source files, please ensure that the directories with the header files are listed in the VisualGDB Project Properties -> Build Settings -> Include Directories.
support
KeymasterIf the problem can be reproduced on a specific file, please send it to our support email (or post it here) along with a screenshot demonstrating the problem and the exact steps we could follow on our side to reproduce it. Once we can reproduce the problem, we should be able to fix it or suggest a workaround.
April 6, 2019 at 02:58 in reply to: VisualGDB Python module remote debug problems / JETSON TX2 #24590support
KeymasterSorry, it looks like you are still using the pre-built Python executable instead of the one you built (that should be installed to /usr/local/bin) and it still fails to evaluate the ‘f’ variable that contains the frame info:
gdb --interpreter mi --args "python" "/tmp/com_sysprogs_PythonDebugWrapper.py" "/tmp/com_sysprogs_PythonBreakpointModule.so" /tmp/VisualGDB/c/Local/PRO/DT777/Tests/MSML_PyExt/../Scripts/Test_ApiGeneral.py
Below is the relevant snippet from the log:
-var-create --frame 13 --thread 1 - * "(void *)f" ^done,name="var5",numchild="0",value="0x0",type="void *",thread-id="1",has_more="0" -data-evaluate-expression --frame 13 --thread 1 "\(void\ \*\)\(\(PyFrameObject\ \*\)0x0\)->f_localsplus\[0]" ^error,msg="Cannot access memory at address 0x178"
Please double-check that you have selected the newly built Python executable in the wizard (see step 11 in the tutorial). If it still doesn’t work, please try using the regular debugging techniques to ensure that the ‘f’ variable is accessible (declaring it volatile should normally work). Without being able to evaluate the frame context, VisualGDB will not be able to decode the state of the Python interpreter.
support
KeymasterGood to know it works. The keywords are indeed standard, however Clang itself has a fairly complex logic for suggesting different keywords based on context, that changes from version to version. And since it is maintained by the Clang team, we want to avoid making major changes to it, hence we added a very thin layer on top that unconditionally adds the keywords specified in the settings in case Clang does not suggest them yet (we do check for duplicates, so no worries about that).
support
KeymasterThis looks correct. Based on your screenshot, there are no non-static fields or methods in the class, so code completion has nothing to show.
-
AuthorPosts