我目前在使用 MonoDevelop 和 Mono 运行时时遇到了一些问题。具体来说,当我在 MonoDevelop 中运行使用 NUnit 创建的单元测试时,出现“Unix 传输错误”。我在某处读到,它是由 Windows 版本的 DLL 引起的,我想检查 NUnit 库“链接”哪些库。
所以我正在寻找 ldd 的等效项,而不必自己编写它......
我没有找到类似的东西,有什么吗?
提前致谢。
最佳答案
如果您打开MONO_LOG_LEVEL
,您可以看到Mono尝试在运行时解决程序集依赖关系。这将遍历全局程序集缓存和本地目录,这可能有助于您很好地了解应用程序所需的特定 .dll。
示例(显示无法解析的 .dll):
$ MONO_LOG_LEVEL=debug mono Clojure.Main.exe
...
Mono: Assembly Loader probing location: '/usr/lib/mono/gac/Clojure/1.5.0.0__cf3caecd327a2fa9/Clojure.dll'.
Mono: Assembly Loader probing location: '/usr/lib/Clojure.dll'.
Mono: Assembly Loader probing location: '/usr/lib/mono/4.5/Facades/Clojure.dll'.
Mono: Assembly Loader probing location: '/usr/lib/mono/gac/Clojure/1.5.0.0__cf3caecd327a2fa9/Clojure.exe'.
Mono: Assembly Loader probing location: '/usr/lib/Clojure.exe'.
Mono: Assembly Loader probing location: '/usr/lib/mono/4.5/Facades/Clojure.exe'.
Mono: The following assembly referenced from /home/bonh/foo/Clojure.1.5.0.2/tools/net40/Clojure.Main.exe could not be loaded:
Assembly: Clojure (assemblyref_index=1)
Version: 1.5.0.0
Public Key: cf3caecd327a2fa9
etc.
关于c# - .NET/Mono 应用程序的 ldd 的等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25397492/