sprof如何定位我的共享库

How can sprof locate my shared library

本文关键字:我的 共享 定位 何定位 sprof      更新时间:2023-10-16

我在/tmp文件夹中创建了一个共享库"mylib.so"。我想介绍mylib.so。为了做到这一点,我采取了以下步骤

  1. export LD_PROFILE_OUTPUT=${PWD}
  2. export LD_PROFILE=mylib.so
  3. export LD_LIBRARY_PATH=/tmp
  4. 执行my_app,它链接到mylib.so

在这4个步骤之后,我"应该"在/tmp文件夹中有一个mylib.so.profile。但是没有这样的文件。我怀疑sprof找不到mylib.so。我该如何告诉sprof在/tmp文件夹中查找mylib.so?我使用的是redhat企业linux 5.0。

以上所有步骤都有效。我的错误是,共享库被称为mylib.so.1,而不是mylib.so。我在My_app上运行了ldd,它显示My_app需要mylib.so.1。然后我更改了导出LD_PROFILE=mylib.so.1,一切都很好。