为什么`LD_DEBUG=libs`无法显示应用程序中加载的库?

ldfqzlk8  于 2022-09-19  发布在  Linux
关注(0)|答案(1)|浏览(165)

背景:

我正在尝试发现libqbscore.so是从哪里加载的,以及它是何时加载的。当我设置LD_DEBUG=libs并运行程序/bin/qtcreator时,我在调试过程中没有发现libqbscore.so

但是,如果我设置了LD_PRELOAD=/path/to/libqbscore.so,那么我将开始在输出中查找它的匹配项。

问题:

  • 为什么LD_DEBUG无法显示它正在明确加载的库?
  • 它是否只是在没有调试符号的情况下对库保持沉默?
  • 如何修复此问题,以便在运行QtCreator时确定libqbscore.so的来源?

谢谢。

b4lqfgs4

b4lqfgs41#

这是因为qtcreator进程不会加载libqbScotre.so。QBS子进程加载它。

由于Qt CreatorQbs是开源项目,可以通过分析源代码来分析它们之间的交互。

相关问题