Sysprogs forums › Forums › VisualGDB › VisualGDB 5.6 Clean And Source line Build Fail connection
- This topic has 24 replies, 2 voices, and was last updated 1 year, 3 months ago by lashmuelE.
-
AuthorPosts
-
July 3, 2023 at 01:57 #34404lashmuelEParticipant
attached the screen shots you request
Attachments:
You must be logged in to view attached files.July 3, 2023 at 01:59 #34406lashmuelEParticipantAttached the screen shots you requetsed
Attachments:
You must be logged in to view attached files.July 3, 2023 at 02:01 #34408lashmuelEParticipantAttach the log you requested
Attachments:
You must be logged in to view attached files.July 3, 2023 at 10:40 #34411supportKeymasterHi,
Thanks for the detailed repro information. Please find the detailed explanation below.
The problem happens because the Intel compiler you are using reports the errors using relative paths:
Test.cpp(9): error: expected a ";"
When VisualGDB encounters, such a message, it first checks the build log for “entering directory <…>” messages from GNU Make, and it there are none, it defaults to the directory of the .vcxproj file. Hence, Test.cpp gets mapped to <Directory of .vcxproj file>\Test.cpp.
If you would like to map it to N:\6731_OMFV\SHMUEL\rdpMRS\rdp\dsg_cmp\src\test.cpp instead, you can set VisualGDB Project Properties -> Path Mapping -> Default Windows Directories -> Relative Paths (bottom option on the page) to N:\6731_OMFV\SHMUEL\rdpMRS\rdp\dsg_cmp\src.
Please also remove the $(RemoteSourceDir) => $(BuildDir) mapping, as it may interfere with translation of other messages.
Attachments:
You must be logged in to view attached files.July 5, 2023 at 02:13 #34419lashmuelEParticipantHello,
I did the exact screen shot but still i get error pressing to the failed build line ( Test.cpp(9): error: expected a”;” )
Attached to demo project i used for this problem
Please advise according to this demo project
Attachments:
You must be logged in to view attached files.July 5, 2023 at 13:36 #34421supportKeymasterHi,
The demo project will not build in our environment because it references a toolchain that we do not have (source /opt/intel/parallel_studio_xe_2020.4.912/psxevars.sh intel64;) and multiple other files from your machine involved in managing this toolchain. Hence we cannot advise anything based on it – it fails much earlier with a completely different error message.
Also, the file synchronization settings on the first page of VisualGDB Project Properties do not make sense – they map the $(ProjectDir) to $(ProjectDirLinux) that you manually defined as “/” via User Variables page. Unless you are manually uploading the project into the root directory on the Linux side (that shouldn’t be the case), the path mapping is not correct and will not work.
We can help you if you could provide:
- The full build log showing the error message.
- The screenshot of the error you get when clicking on the error message.
- The exact path (as seen from the Windows machine) of the test.cpp file that you expect to open when you click on the message.
- A screenshot of the Path Mapping page. For testing, please use hardcoded paths instead of $(BuildDir) there. Once you get it working, you can switch back to using $(BuildDir).
July 6, 2023 at 03:20 #34426lashmuelEParticipantHello,
All the information you requested in the attached file
Attachments:
You must be logged in to view attached files.July 6, 2023 at 06:09 #34429lashmuelEParticipantHello,
if it helps you can change the test project definitions so it pass the build and run on your machine and then send it to me for checkmaybe the compiler is not the issue here….
July 8, 2023 at 14:49 #34439supportKeymasterHi,
Thanks for the update. Looks like we actually found the issue. The path from the Windows file properties is identical to the one shown in the error message, however because you are using the Parallel Studio compiler instead of GCC, it outputs the error messages in a slightly different format. So, VisualGDB ends up treating the line number as part of the path (Test.cpp(9) instead of just Test.cpp).
You can fix it by manually setting the GCC/DetailedMessage element in the <VisualGDB Directory>\Rules\RegularExpressions.xml file to:
^([^:]+|[a-zA-Z]:[^:]+|[a-zA-Z]:/[^:]+)\(([0-9]+|)(, [0-9]+|)\): (error|fatal error|internal compiler error|warning|note|Error) *:(.*)$
If the regex doesn’t cover some other messages, you can use debuggex.com to quickly test it out and tweak the regex to cover all cases.
Note that this will affect all projects and will stop VisualGDB from parsing the GCC messages correctly. If you would like to change it only for one project, you can use this build [VisualGDB-6.0.1.4882.msi] and save the attached BuildMessageRegexes.xml file to the project directory and add the following element into the .vgdbsettings files directly under VisualGDBProjectSettings2:
<BuildMessageTemplateFile>BuildMessageRegexes.xml</BuildMessageTemplateFile>
This will override the DetailedMessage element only for the projects with edited .vgdbsettings files, while using the regular regexes for all other projects (note that most project types use separate .vgdbsettings files for Debug/Release configurations and also libraries use separate .vgdbsettings files from executables).
Attachments:
You must be logged in to view attached files.July 10, 2023 at 22:36 #34443lashmuelEParticipantHello,
This time you solve the problem. Thank you!!
-
AuthorPosts
- You must be logged in to reply to this topic.