PINTOOL工具的配置使用转载请注明文档出处文档格式.docx
- 文档编号:17405827
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:5
- 大小:17.59KB
PINTOOL工具的配置使用转载请注明文档出处文档格式.docx
《PINTOOL工具的配置使用转载请注明文档出处文档格式.docx》由会员分享,可在线阅读,更多相关《PINTOOL工具的配置使用转载请注明文档出处文档格式.docx(5页珍藏版)》请在冰豆网上搜索。
基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
好的,入正题,安装yum,其实说安装不确切,在安装redhat的时候yum,其实已经安装好了,然而redhat官方的本意是这个需要收费的(他使用的是收费源),所以咱们需要修改yum的配置文件来达到免费使用的目的。
好的先介绍一下什么是repo文件?
repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用!
建立新的配置文件:
[root@killgoogle~]#cd/etc/yum.repos.d
[root@killgoogle~]#touchrhel-debuginfo.repo
[root@killgoogle~]#touchmirrors-rpmforge
[root@killgoogle~]#touchrpmforge.repo
往新的配置文件写东西:
vi的使用:
执行下面的virhel-debuginfo.repo命令之后会进入vi的命令模式,这个时候点击i键,进入编辑模式,将下面提供的文档copy进去,编辑完整之后点击Esc按键,然后同时按住shift和;
按键推出,此时光标移到最后一行的冒号后面,这个时候输入命令wq(保存并退出的意思)。
OK,你可以继续了......
[root@killgoogle~]#virhel-debuginfo.repo
[base]
name=CentOS-5-Base
#mirrorlist=http:
//mirrorlist.centos.org/?
release=$releasever5&
arch=$basearch&
repo=os
#baseurl=http:
//mirror.centos.org/centos/$releasever/os/$basearch/
baseurl=
gpgcheck=1
gpgkey=http:
//mirror.centos.org/centos/RPM-GPG-KEY-centos5
#releasedupdates
[update]
name=CentOS-5-Updates
release=4&
repo=updates
#packagesused/producedinthebuildbutnotreleased
[addons]
name=CentOS-5-Addons
repo=addons
#additionalpackagesthatmaybeuseful
[extras]
name=CentOS-5-Extras
repo=extras
#additionalpackagesthatextendfunctionalityofexistingpackages
[centosplus]
name=CentOS-5-Plus
repo=centosplus
enabled=0
#contrib-packagesbyCentosUsers
[contrib]
name=CentOS-5-Contrib
repo=contrib
#vidag.repo
[dag]
name=DagRPMRepositoryforRHEL5
baseurl=http:
//ftp.riken.jp/Linux/dag/redhat/el5/en/$basearch/dag/
enabled=1
//ftp.riken.jp/Linux/dag/packages/RPM-GPG-KEY.dag.txt
修改第二个配置文件:
[root@killgoogle~]vimirrors-rpmforge
http:
//apt.sw.be/redhat/el5/en/$ARCH/dag
//archive.cs.uu.nl/mirror/dag.wieers/redhat/el5/en/$ARCH/dag
//ftp2.lcpe.uni-sofia.bg/freshrpms/pub/dag/redhat/el5/en/$ARCH/dag
#http:
//ftp.heanet.ie/pub/freshrpms/pub/dag/redhat/el5/en/$ARCH/dag
//ftp-stud.fht-esslingen.de/dag/redhat/el5/en/$ARCH/dag
//mirror.cpsc.ucalgary.ca/mirror/dag/redhat/el5/en/$ARCH/dag
//mirrors.ircam.fr/pub/dag/redhat/el5/en/$ARCH/dag
//rh-mirror.linux.iastate.edu/pub/dag/redhat/el5/en/$ARCH/dag
//wftp.tu-chemnitz.de/pub/linux/dag/redhat/el5/en/$ARCH/dag
//www.mirrorservice.org/sites/apt.sw.be/redhat/el5/en/$ARCH/dag
修改第三个配置文件:
[root@killgoogle~]#virpmforge.repo
#Name:
RPMforgeRPMRepositoryforRedHatEnterprise5-dag
#URL:
[rpmforge]
name=RedHatEnterprise$releasever-RPM-dag
#baseurl=http:
//apt.sw.be/redhat/el5/en/$basearch/dag
mirrorlist=http:
//apt.sw.be/redhat/el5/en/mirrors-rpmforge
#mirrorlist=file:
///etc/yum.repos.d/mirrors-rpmforge
enabled=1
protect=0
gpgkey=file:
///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck=1
以上的都完成之后,祝贺你,你已经完成了99%了,坚持就是胜利哦
下一步,安装g++,输入命令 yum install gcc-g++;
如果出现如果系统启动的时候,yum出现Existinglock/var/run/yum.pid:
anothercopyisrunningaspid3380.Aborting.可以用下面的办法解决:
[root@killgoogle~]/etc/init.d/yum-updatesdstop
也可以用以下方法:
[root@killgoogle~]rm-f/var/run/yum.pid
主要原因就是yum在自动更新只要关掉它就可以了。
然后继续yum install gcc-g++
好的,经历了这么多波折,咱们终于进入正题了,使用pintool
四 pintool的使用
首相将从官网www.pintool.org下载的pin-2.4-20148-gcc.3.4.6-ia32_intel64-linux.tar.gz放在桌面上,打开终端
输入 cd /home/你的用户名/Desktop
$tarzxfpin-2.4-20148-gcc.3.4.6-ia32_intel64-linux.tar.gz 解压
$cdpin-2.4-20148-gcc.3.4.6-ia32_intel64-linux 进入解压的那个文件夹
$cdsource/tools/ManualExamples/ 进入需要操作的文件夹
$maketest make test 文件
假如是你写的helloworld.cpp,就cd 你的helloworld.cpp的文件夹,然后gcc helloworld.cpp
/usr/bin/g++-c-Wall-Werror-Wno-unknown-pragmas-g-O3-fomit-frame-pointer
-DBIGARRAY_MULTIPLIER=1-DUSING_XED-g-fno-strict-aliasing-I../Include
-I../InstLib-I../../../extras/xed2-intel64/include-I../../../source/include
-I../../../source/include/gen-DTARGET_IA32E-DHOST_IA32E-fPIC-DTARGET_LINUX
-oobj-intel64/inscount0.oinscount0.cpp
/usr/bin/g++-g-shared-Wl,-Bsymbolic-Wl,--version-script=../../../source/include/pintool.ver
-L../Lib/-L../ExtLib/-L../../../extras/xed2-intel64/lib-L../../../intel64/lib
-L../../../intel64/lib-ext-oobj-intel64/inscount0.soobj-intel64/inscount0.o
-L../../../intel64/lib-ext-lpin-lxed-ldwarf-lelf-ldl-gtouchinscount0.tested
touchinscount0.failed
touchobj-intel64/inscount0.so.makefile.copy;
rmobj-intel64/inscount0.so.makefile.copy
../../../pin-slow_asserts-tobj-intel64/inscount0.so--/bin/cpmakefileobj-intel64/inscount0.so.makefile.copy
cmpmakefileobj-intel64/inscount0.so.makefile.copy
rmobj-intel64/inscount0.so.makefile.copy;
rminscount0.failed
<
etc.>
$../../../pin-tobj-intel64/pinatrace.so--/bin/ls
如果是helloworld,就是pin的位置/pin -t pinatrace.so的位置/pinatrace.so ―― helloworld的位置/helloworld
_insprofiler.cppatrace.outinscount0.oitrace.cppproccount
atraceimageload.cppinscount1.cppitrace.oproccount.cpp
atrace.cppinscount0insprofiler.cppitrace.outproccount.o
atrace.oinscount0.cppitracemakefileproccount.out
。
当然你可以用别的库分析自己的程序哦,格式如下:
pin -t 库.so 分析的程序.out
$headpinatrace.out
打印你的结果
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PINTOOL 工具 配置 使用 转载 注明 文档 出处