gentoo 上安装 systemtap
emerge -avt dev-util/systemtap
emerge的输出会提示你需要重新编译kernel打开相应的内核支持,如debuginfo, kprobe。
可惜的是跑不了,systemtap-2.4在linux-3.18上有个bug。
解决的方法是手工编译最新的systemtap,很简单:
git clone git://sourceware.org/git/systemtap.git ./configure --prefix=~/tools make -j8 && make install
安装systemtap-mode
git clone https://github.com/ruediger/systemtap-mode.git 把systemtap-mode.el 放到emacs的加载路径下面 (require 'systemtap-mode)
开始愉快的编写systemtap了
注意,如果要在emacs中执行脚本,emacs需要有root权限。
systemtap-execute-script