【问题标题】:How to detect shared objects loaded by python ctypes如何检测python ctypes加载的共享对象
【发布时间】:2020-06-06 18:18:14
【问题描述】:

我需要将共享对象复制到一个包中以进行分发。到此为止,ldd 就足够了。

我现在遇到了https://github.com/emcconville/wand/blob/master/wand/api.py,它使用了 ldd 无法检测到的 ctype。

如何检测加载了哪些共享对象以便复制它们?

【问题讨论】:

    标签: python shared-libraries ctypes


    【解决方案1】:

    一般来说没有办法做到这一点。考虑一个执行ctypes.util.find_library(sys.argv[1]) 的程序。您不可能提前知道它将尝试加载哪些库。

    在您的特定情况下,您应该能够通过包装ctypes 来记录它在执行期间加载的所有库来解决这个问题。但是请注意,这只有在您的执行加载了它在任何执行时需要的所有库时才有效,因此请确保您点击了所有相关的代码路径。

    【讨论】:

      猜你喜欢
      • 2019-02-10
      • 1970-01-01
      • 1970-01-01
      • 2010-11-11
      • 1970-01-01
      • 2018-09-09
      • 1970-01-01
      • 1970-01-01
      • 2014-04-29
      相关资源
      最近更新 更多