Mono探查器未运行
我正在尝试运行mono分析器,但是,我没有收到任何分析器输出或错误消息 如果我运行Mono探查器未运行,mono,Mono,我正在尝试运行mono分析器,但是,我没有收到任何分析器输出或错误消息 如果我运行mono--profile=log program.exe程序将按预期运行,并且没有错误消息,但是没有output.mlpd文件 我已安装探查器LIB,并且可以看到:- # ldconfig -p | grep libmono-profiler libmono-profiler-log.so.0 (libc6,hard-float) => /usr/lib/libmono-profiler-l
mono--profile=log program.exe
程序将按预期运行,并且没有错误消息,但是没有output.mlpd
文件
我已安装探查器LIB,并且可以看到:-
# ldconfig -p | grep libmono-profiler
libmono-profiler-log.so.0 (libc6,hard-float) => /usr/lib/libmono-profiler-log.so.0
libmono-profiler-coverage.so.0 (libc6,hard-float) => /usr/lib/libmono-profiler-coverage.so.0
libmono-profiler-aot.so.0 (libc6,hard-float) => /usr/lib/libmono-profiler-aot.so.0
我尝试过使用monosgen
和几乎所有我能找到的分析器选项示例,但没有任何变化
将探查器更改为无效的内容,如mono--profile=meh program.exe
会产生相同的结果(程序运行,没有错误消息,没有探查器输出)
我在两台不同的机器上试过(YoctoThud和Ubuntu18.04.2)
在这些环境中,以前版本的mono都可以使用这种方法,但是,回滚和测试是非常重要的
更新
我已经通过安装mono profiler软件包在一些平台(Ubuntu)上解决了这个问题
此软件包提供以下文件:-
/.
/usr
/usr/bin
/usr/bin/emveepee
/usr/bin/mprof-decoder
/usr/bin/mprof-heap-viewer
/usr/lib
/usr/lib/mono-tools
/usr/lib/mono-tools/Mono.Profiler.Widgets.dll
/usr/lib/mono-tools/emveepee.exe
/usr/lib/mono-tools/mprof-decoder-library.dll
/usr/lib/mono-tools/mprof-decoder.exe
/usr/lib/mono-tools/mprof-heap-snapshot-explorer.dll
/usr/lib/mono-tools/mprof-heap-viewer.exe
/usr/share
/usr/share/doc
/usr/share/doc/mono-profiler
/usr/share/doc/mono-profiler/changelog.Debian.gz
/usr/share/doc/mono-profiler/copyright
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/mprof-decoder.1.gz
/usr/share/man/man1/mprof-heap-viewer.1.gz
这些似乎只是处理概要文件输出的工具。尚不清楚这些文件中的哪些文件“允许”/usr/bin/mono
实际捕获配置文件数据,或者为什么mono没有报告所需文件(?)不存在的错误
/usr/lib/libmono profiler-*.so文件已经在这些平台上(在安装mono profiler之前)
剩下要解决的平台是手臂上的Yocto Thud。由于Ubuntu没有可用的软件包,也没有错误消息,因此很难判断是什么缺失导致了这个问题。Ubuntu的解决方案是安装
mono profiler
软件包
Yocto Thud上的问题是存在/usr/lib/libmono profiler log.so.0
,但是,mono查找/usr/lib/libmono profiler log.so
(使用strace确定),该日志未与/usr/lib/libmono profiler log.so.0进行符号链接
mono没有将此报告为错误的事实似乎是一个bug
Mono JIT compiler version 5.20.1.19 (tarball Thu Apr 11 09:02:17 UTC 2019)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: softdebug
Interpreter: yes
LLVM: yes(600)
Suspend: hybrid
GC: sgen (concurrent by default)
/.
/usr
/usr/bin
/usr/bin/emveepee
/usr/bin/mprof-decoder
/usr/bin/mprof-heap-viewer
/usr/lib
/usr/lib/mono-tools
/usr/lib/mono-tools/Mono.Profiler.Widgets.dll
/usr/lib/mono-tools/emveepee.exe
/usr/lib/mono-tools/mprof-decoder-library.dll
/usr/lib/mono-tools/mprof-decoder.exe
/usr/lib/mono-tools/mprof-heap-snapshot-explorer.dll
/usr/lib/mono-tools/mprof-heap-viewer.exe
/usr/share
/usr/share/doc
/usr/share/doc/mono-profiler
/usr/share/doc/mono-profiler/changelog.Debian.gz
/usr/share/doc/mono-profiler/copyright
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/mprof-decoder.1.gz
/usr/share/man/man1/mprof-heap-viewer.1.gz