编译EVA小记

说起eva,感觉还是很亲切的,第一次用ubuntu的时候是8.04,那时候和姐两个人都是新手,暑假没事做,各自装上ubuntu,然后折腾,交流,那时候显然不知道irc、gtalk之类的高端的东西,所以还是用qq,那个时候用的最多的客户端就是eva(好像也只有这个比较好用一些)。如此,对eva的感情当然很深厚。

后来一直到10.04的时候还是执着用着eva,但是某一天没事做去win下把qq的好有分组改了一通,后来发现eva再也上不去了。登录是成功的,但是登录成功那一霎那就崩溃了。因为学习很紧张,也就再也没去试过,后来改用gtalk,比较偏执地用了很久(现在也在继续),也鼓动了一些同学在用。但是寒假联系一些同学的时候发现还是需要上一下qq什么的,webqq在我这铁通就很杯具了,pidgin什么的,登录qq也很杯具,于是没办法,开始重新捣鼓eva,嗯,这就是序言,太长了……

好了下面进入正题。

1、首先下载源代码

svn co https://evaq.svn.sourceforge.net/svnroot/evaq evaq

2、然后进入到编译的目录

cd evaq/trunk/eva/

3、没有configure脚本,这一步貌似是生成的吧(IRC上高手告诉我的)

make -f admin/Makefile.common

4、对了,依赖还没解决呢,因为eva源里有,所以可以这样一下子就安装所有依赖包

sudo apt-get build-dep eva

5、然后就可以configure啦,修改一下prefix,因为依赖一个libart的包,源里的版本貌似用不上,也就算了,用–without-arts忽略之

./configure –prefix=/usr –without-arts

6、不着急make,这里有个问题,在./src/libeva/这个目录里有个evamemo.cpp文件有问题。打开之,第144行,那个itoa函数,据说不是标准库里面的,所以make的时候会出错,因为不会C,所以请IRC上的高手帮忙用sprintf函数改写了一下。也就是将

itoa(EvaUtil::read32(decryptedBuf+pos),qqid,10);

这一句删掉,改成:

sprintf(qqid, “%d”, EvaUtil::read32(decryptedBuf+pos));

然后保存之,就可以编译了(如果CPU是双核就加上-j2参数,否则就直接make)

make -j2

7、然后安装(需要事先卸载掉源里安装的eva)

sudo make install

(但是这一步我一开始运行出错了,后来我运行了make installcheck之后才管用)

大功告成!可以运行eva了,在程序菜单里就可以发现启动项。

Join the Conversation

5 Comments

    1. 呵呵,确实没什么新的东西,我这里主要是修复了一个bug,现在可以登录了,以前是登录的时候一直崩溃的……

  1. 我下了http://ubuntu.srt.cn/ubuntu/pool/universe/e/eva/ 的deb包 但是安装下来说我缺少依赖关系 错误: 依赖关系不满足: kdelibs4c2a (>= 4:3.5.9)

    这是啥意思?

Leave a comment

Your email address will not be published. Required fields are marked *