gcc plugin(1)——gcc安装

老板让我写生成trace的gcc plugin,在github上找了一份代码参考

https://github.com/GaloisInc/ivory-rtverification/tree/master/gcc-plugin/src

之前用LLVM PASS做这件事,但因为LLVM是IR级别插桩,丢失很多信息,导致生成的trace不准确,因此老板决定用gcc plugin实现插桩,保证信息完整。

因为完全不了解gcc plugin,找了个符合我需求的教程

http://libplugin.sourceforge.net/tutorials/simple-gcc.html

教程中步骤如下:

复制代码
svn -q checkout svn://gcc.gnu.org/svn/gcc/trunk my-gcc-dir

mkdir gcc.obj

mkdir gcc.bin

cd gcc.obj

my-gcc-dir/configure --prefix=path-to-gcc.bin/ --program-prefix=plugin- --enable-languages=c

make && make install; beep
复制代码

 

在configure那一步,提示gcc configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+

解决方法参考http://blog.csdn.net/stormbjm/article/details/9107831

在安装GMP时又提示缺少m4,上面的文章中也有解决方法。

 

将这些依赖项安装完毕后,重新configure,终于成功。

想一步一步来,没有按照教程里的把make和make install一起执行,先make,提示error找不到gengtype_lex.c,向上翻信息,发现是由于没有安装flex造成的,在安装flex的时候又提示找不到yacc,解决方法如下

sudo apt-get install byacc
sudo apt-get install flex

然后回到gcc make,漫长的等待……

转载于:https://www.cnblogs.com/milly-IT-blog/p/5162741.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值