larbin配置

来源:互联网 发布:动态ip绑定域名 编辑:程序博客网 时间:2024/05/01 21:43

Larbin的使用--安装

1、到网上下载 larbin-2.6.3.tar.gz,然后解压。

tar zxvf larbin-2.6.3.tar.gz

2、 到解压的目录,运行配置文件

?
./configure

却出现以下的错误:

?
make[2]: 正在进入目录 `/home/byd/test/larbin-2.6.3/src/utils'
makedepend -f- -I.. -Y *.cc 2> /dev/null> .depend
make[2]: *** [dep-in] 错误 127
make[2]:正在离开目录 `/home/byd/test/larbin-2.6.3/src/utils'
make[2]: 正在进入目录 `/home/byd/test/larbin-2.6.3/src/interf'
<span style="color: #ff0000;"><strong>makedepend</strong></span> -f- -I.. -Y *.cc 2> /dev/null> .depend
make[2]: *** [dep-in] 错误 127
make[2]:正在离开目录 `/home/byd/test/larbin-2.6.3/src/interf'
make[2]: 正在进入目录 `/home/byd/test/larbin-2.6.3/src/fetch'
makedepend -f- -I.. -Y *.cc 2> /dev/null> .depend
make[2]: *** [dep-in] 错误 127
make[2]:正在离开目录 `/home/byd/test/larbin-2.6.3/src/fetch'
make[1]: *** [dep] 错误 2
make[1]:正在离开目录 `/home/byd/test/larbin-2.6.3/src'
make: *** [dep] 错误 2

在上面发现有makedepend,于是输入

?
<strong>makedepend
</strong>

发现没有安装,有如下的提示

?
<strong>The program'makedepend' is currently not installed.  You can install it by typing:
sudo apt-getinstall xutils-dev
</strong>

于是就输入命令老老实实的安装xutils-dev了

?
<strong>sudo apt-getinstall xutils-dev
</strong>

安装之后,./configure成功

3、编译

在目录下输入make进行编译。又出现了一下的错误

?
parse.c:113: error: conflicting typesfor ‘adns__parse_domain’
internal.h:569: note: previous declaration of ‘adns__parse_domain’ was here
parse.c: In function ‘adns__parse_domain_more’:

于是直接到adns目录找到internal.h文件注释掉568-572行。

?
//adns_status adns__parse_domain(adns_state ads, int serv, adns_query qu,
                   //vbuf *vb, parsedomain_flags flags,
                   //const byte *dgram, int dglen, int *cbyte_io, int max);

继续make ,又出现一下的错误

?
sequencer.cc:5: fatal error: iostream.h: 没有那个文件或目录

代码采用的是以前C的编码方式,现在要改成iostream 了。于是将目录下的所有iostream.h 改成iostream。可以采用一下的命令

?
<strong>sed -i -e 's/iostream.h/iostream/g' `grep -rl iostream.h *`  </strong>

注意:后面的包含grep 的不是单引号,而是键盘左上角的符号。

继续编译,又出现错误

?
hashTable.cc:32: error: ‘cerr’ was not declared inthis scope
hashTable.cc:41: error: ‘cerr’ was not declared inthis scope
hashTable.cc:42: error: ‘endl’ was not declared inthis scope

于是将目录下的所有cerr和 endl改成 std::cerr和std::endl。可以采用类似上面的命令。不过要注意是不是有的endl或cerr已经是std::endl和std::cerr。

?
<strong>sed -i -e 's/cerr/std::cerr/g' `grep -rl cerr *`
</strong>
?
<strong>sed -i -e 's/endl/std::endl/g' `grep -rl endl *` </strong>

至此编译就没有问题了。

可以发现在目录下已经生成larbin的可执行文件。

输入./larbin就可以运行larbin了。