- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
VTune Amplifier 2018 in Visual Studio 2017 is not finding symbols for my program:
Notice the "func@0x..." notation. Mysteriously, during loading, it lists two modules where symbols failed to load—and neither is my code:
I wasn't able to resolve this with similar threads for previous versions of VTune. In particular, this is a debug build with the following set:
- Program Database (/Zi)
- Generate Debug Information (/DEBUG)
I have also confirmed manually that a ".pdb" file is being generated (in the same directory as the output ".exe").
Just for completeness, I also tried specifying "Binary/Symbol Search" and "Source Search" directories under "Vectorization and Threading Adviser Analysis -> Project Properties" and re-running the analysis, with no change in effect.
So . . . what do I try now?
Ian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Could you check if value of the "Generate Full Program Database File" option is "Yes" and the /debug:full linker flag is used (see https://blogs.msdn.microsoft.com/vcblog/2016/10/05/faster-c-build-cycle-in-vs-15-with-debugfastlink/)?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Could you check if value of the "Generate Full Program Database File" option is "Yes" and the /debug:full linker flag is used (see https://blogs.msdn.microsoft.com/vcblog/2016/10/05/faster-c-build-cycle-in-vs-15-with-debugfastlink/)?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A few random thoughts:
- Enabling those options explicitly seems to have done the trick. (Thanks!)
- I hadn't noticed that the problem occurred in debug mode only, not release mode, and with the same same (unset) values of those arguments.
- Hence, my guess is that `/debug` aliases to `/debug:fastlink` in debug mode, but to `/debug:full` in release mode—and that VTune requires `/debug:full` to work properly while I had been assuming it was set in debug mode too. It would be nice if VTune could read the indexed PDBs also (as I understand it, they store pointers to all data in ".o" files, so all the same information is still accessible).
- At the very least, it would be nice to give some more helpful diagnostic: "VTune found an indexed PDB for this module, but deindexing is unsupported. Use linker option `/debug:full`." Or something.
- I'll post back here if the problem returns in the future for a different reason.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for your thoughts. We will consider improving the current behavior.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are there plans to support /debug:fastlink PDB files in the future since this is now the default project setting in VS 2017?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
/debug:fastlink support is being is considered for future releases of VTune Amplifier.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page