Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
5136 Discussions

unresolved symbols when starting instrumented binary

rsinger73
Beginner
327 Views
I have a problem using vtune together with our application.
We have a executable, that has references to some dynamic link libraries. The libraries
themselves have back-references to symbols in the executable.

When vtune is instrumenting the code of the executable,
it seems, that instrumented executable is rewritten with a new name (eg app_ins.exe)
and the original executable (eg. app.exe) is exchanged with a small launcher application,
that just loads the instrumented binary.

The problem now is, that the dlls have references to symbols in the file with the original name (app.exe).
But that file does not contain the symbols anymore, because they have been moved to (app_ins.exe)
and this results inunresolved symbols at runtime.

Does anybody know how to solve this problem without changing anything in our dependencies/
project setting?

Thanks and Regards,

Reiner

0 Kudos
1 Reply
Peter_W_Intel
Employee
327 Views
Quoting - rsinger73
I have a problem using vtune together with our application.
We have a executable, that has references to some dynamic link libraries. The libraries
themselves have back-references to symbols in the executable.

When vtune is instrumenting the code of the executable,
it seems, that instrumented executable is rewritten with a new name (eg app_ins.exe)
and the original executable (eg. app.exe) is exchanged with a small launcher application,
that just loads the instrumented binary.

The problem now is, that the dlls have references to symbols in the file with the original name (app.exe).
But that file does not contain the symbols anymore, because they have been moved to (app_ins.exe)
and this results inunresolved symbols at runtime.

Does anybody know how to solve this problem without changing anything in our dependencies/
project setting?

Thanks and Regards,

Reiner


Hello Reiner,

Regarding that the dlls have references to symbols in original app.exe, there is no way for instrumented dlls toreferenceinstrumented EXE file since function name is wrapped by Call Graph. Even the user set Instrumentation level as "minimal" for EXE file, but it is useless since EXE module name is wrapped by Call Graph.

Regards, Peter
0 Kudos
Reply