Home > OS >  Why does `LD_DEBUG=libs` fail to display a library that loaded in an application?
Why does `LD_DEBUG=libs` fail to display a library that loaded in an application?

Time:09-20

Background:

I am trying to discover where libqbscore.so is loaded from, and when it happens. When I set LD_DEBUG=libs and run the program, /bin/qtcreator, I do not find libqbscore.so amidst the debug.

If however, I set LD_PRELOAD=/path/to/libqbscore.so, then I will start finding its occurences in the output.

Question:

  • Why would LD_DEBUG fail to display a library it is clearly loading?
  • Is it perhaps simply silent on libraries without debugging symbols?
  • How can I fix this so I can determine the origin of libqbscore.so when I run QtCreator?

Thanks.

CodePudding user response:

It's because the qtcreator process does not load the libqbscore.so. The qbs child process loads it.

Because Qt Creator and Qbs are open source projects, their interactions can be analyzed by analyzing the source codes.

  • Related