Executable
檢測是否使用 gprof 工具建構了 ELF 二進製文件?
是否可以檢查給定程序是否使用 GNU gprof 工具編譯,即使用“-pg”標誌傳遞給編譯器和連結器,而不執行它來檢查它是否會生成
gmon.out
文件?
您可以檢查對函式的引用
mcount
(或可能_mcount
或__mcount
根據Profiling 的實現)。此功能是分析工作所必需的,並且對於未分析的二進製文件應該不存在。就像是:
$ readelf -s someprog | egrep "\s(_+)?mcount\b" && echo "Profiling is on for someprog"
以上適用於此處的快速測試。
上面答案中的正則表達式並不總是有效……但是在’readelf -s的輸出中grepping for“mcount”的一般想法
$$ binary $$‘是正確的,我認為