Android 移植oprofil性能监测工具
2013-09-12 14:27:38 来源:WEB开发网关于oprofile的移植,在Ubuntu Server 10.04平台上交叉编译,移植到Android,经过实践,以下是交叉编译的正确步骤,不保证在其他环境中能正确运行,以下是编译环境:
build: Ubuntu Server 10.04
host: Android-2.2r2
cross compiler: mips-linux-gnu-gcc version:4.3.2
cpu: mips
交叉编译oprofile,依赖(popt,binutils);
1.Download Open Source:
popt-1.14.tar.gz
binutils-2.21.tar.gz
oprofile-0.9.6.tar.gz
2.Building environment
重要:
touch env.sh
vi env.sh
内容如下:
export PATH=/home/gzshun/share/mips-4.3/bin:$PATH ##修改为自己的工具链路径
export CC="mips-linux-gnu-gcc -EL"
export CXX="mips-linux-gnu-g++ -EL"
export CFLAGS=-static
export CXXFLAGS=-static
export CPPFLAGS=-static
source env.sh
3.Building popt-1.14.tar.gz
tar zxvf popt-1.14.tar.gz
cd popt-1.14
ac_cv_va_copy=yes ./configure --with-kernel-support --host=mips-linux-gnu --prefix=/home/gzshun/popt
make
make install
以下是静态编译:
4.Building binutils-2.21.tar.gz
tar zxvf binutils-2.21.tar.gz
cd binutils-2.21
./configure --with-kernel-support --host=mips-linux-gnu --prefix=/home/gzshun/binutils --enable-shared
make configure-host
make LDFLAGS="-all-static"
make install
5.Building oprofile-0.9.6.tar.gz
tar zxvf oprofile-0.9.6.tar.gz
cd oprofile-0.9.6
./configure --with-kernel-support --host=mips-linux-gnu --prefix=/home/gzshun/oprofile/ --with-extra-libs=/home/gzshun/popt/lib/ --with-extra-includes=/home/gzshun/popt/include/ --with-binutils=/home/gzshun/binutils
make LDFLAGS="-all-static -L/home/gzshun/binutils/lib -Xlinker -R -Xlinker /home/gzshun/binutils/lib -L/home/gzshun/popt/lib/"
make install
6.添加内核oprofile模块
General setup --->
[*] Profiling support (EXPERIMENTAL)
<*> OProfile system profiling (EXPERIMENTAL)
将oprofile模块编进内核,也可以编程模块
开发板性能测试篇:
1.注意
a.在ubuntu编译oprofile的生成路径是:/home/gzshun/oprofile,所以在开发板也需要建立相应的路径
mkdir -p /home/gzshun/
将生成的oprofile目录拷贝到开发板/home/gzshun/目录下
##原因:在ubuntu环境下编译,oprofile会按照原本在ubuntu的路径寻找需要的lib库。(生成目录自己定)
b.修改oprofile/bin/opcontrol第1968行,将/usr/bin修改为/bin
c.在Android系统中的/etc目录下新建mtab文件,并添加内容:nodev /dev/oprofile oprofilefs rw 0 0
d.在开发板设置oprofile的环境变量,必须放在PATH的前面,因为原Android系统也存在2个命令。
e.oprofile生成报告的默认地址是:/var/lib/oprofile
2.性能测试
##Android
- ››Android 当修改一些代码时,使用什么编译命令可以最...
- ››Android 如何添加一个apk使模拟器和真机都编译进去...
- ››Android 修改Camera拍照的默认保存路径
- ››Android 如何修改默认输入法
- ››android开发中finish()和System.exit(0)的区别
- ››Android手势识别简单封装类
- ››android中查看项目数字证书的两种方法
- ››Android中获取IMEI码的办法
- ››android 相机报错 setParameters failed
- ››Android重启运用程序的代码
- ››Android为ListView的Item设置不同的布局
- ››android bitmap与base64字符串的互相转换
更多精彩
赞助商链接