Mono --trace 选项不适用于 Android x86_64

Mono --trace option doesn't work on Android x86_64

我需要 运行 Android x86_64 Marshmallow 平台上的一些 C# 代码——主要是 NUnit 2 测试和一些控制台应用程序(请不要问为什么:)

我想出了使用 Android NDK r13b 编译 Mono 4.4.2,我得到了 bin 文件夹(带有 mono-sgen 和其他二进制文件),我得到了包含所有这些 libmonosgen-2.0.so 和其他文件的 lib 文件夹。我有一个关于一些构建和配置问题的单独问题 -- What is the proper way to install Mono 4.4.2 on Android x86_64? 所以如果你也能看看那里,我将不胜感激。

总的来说 -- 它有效。设置 LD_LIBRARY_PATH & MONO_PATH 后我可以这样做: mono [app.exe],我可以从源代码编译简单的程序,我可以从 lib/mono/4.5 文件夹 运行 nunit-console.exe甚至我的简单测试 运行。

当我尝试 运行 一些使用更多引用的更复杂的测试时,问题就开始了,当然它们都是跨平台的,并且在 Linux 中工作。我无法 运行 使用 EPPlus.dll 读取 MS Excel 文件的简单测试 - 我确实看到 运行ner 屏幕,有时它会尝试 运行 一些东西,有时不是。当我尝试 运行 不同的 运行ner 版本时 - 它根本不起作用,一言不发。我怀疑这都与框架版本、程序集版本等有关。但我怎么知道?

所以我的主要问题是 - 我怎么知道发生了什么? mono --trace 什么都不打印,有什么想法吗?在这种情况下我有什么工具,我怎么能弄清楚呢?模拟器和真机都一样。

非常感谢。

好吧,“--trace”选项在 Android 中确实有效。它只是不向 stdout 打印任何内容,而是使用 logcat(标记为 'mono')。我想在某个地方有 #ifdef 用 Anroid-related.

重新定义了 printf