根据Oprofile的官方网站,可知需要安装的库。
Required libraries :These libraries are required : popt
, bfd
, liberty
(debian users: libiberty is provided in binutils-dev package), dl
, plus the standard C++ libraries.
源码包:
busybox-1.8.1.tar.bz2
Oprofile-0.9.4.tar.gz
Popt-1.7.tar.gz
Binutils-2.19.51.0.3.tar.bz2
linux-2.6.25-android-1.0_r1.tar.gz
(在本次实验,内核直接运用经过修改(可以移植)的源码文件)
编译工具:
arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
1)通过静态交叉编译生成Oprofile的一些相关命令
oparchive opgprof opimport opreport
opannotate opcontrol ophelp opjitconv oprofiled
在交叉编译之前需要做的一些工作:
(1)打开内核的Oprofile选项
通过make menuconfig=>general setup=>
[*] Profiling support (EXPERIMENTAL)
[ ]Activate markers [*] OProfile system profiling (EXPERIMENTAL)
(2)选择安装交叉编译链
选择codeSourcery里下的Sourcery G++ Lite 2009q1-203 for ARM GNU/Linux版(arm-2009q1