【Linux】Ubuntu14.04安装bridge-utils安装brctl

1、下载bridge-utils   http://www.linuxfromscratch.org/blfs/view/svn/basicnet/bridge-utils.html


2、放到/usr/src 目录下

输入:su

以root运行

输入:cp /home/joanna/桌面/bridge-utils-1.5.tar.gz /usr/src/bridge-utils-1.5.tar.gz

bridge-utils拷贝到/usr/src

输入:tar zxvf bridge-utils-1.5.tar.gz

解压

输入:cd bridge-utils-1.5

进入解压好的文件夹


3、配置

①更新autoconf

输入:apt-get install autoconf

这是为了解决直接用autoconf会产生的一个错误:

程序 'autoconf' 已包含在下列软件包中:
 * autoconf
 * autoconf2.13
请尝试:apt-get install <选定的软件包>

自动配置

输入:autoconf

③生成configure文件

输入:./configure

④修改一下Linux的/usr/include/linux/if_bridge.h,为了make做准备

输入:cd /usr/include/linux/

输入:vi if_bridge.h

光标移动到#include <linux/if_ether.h>的下一行,按i键进入编辑模式,键入#include <linux/in6.h>,按Esc退出编辑模式,键入:w保存修改(冒号也要写哦),:x退出。结果就是if_bridge.h多了一个include,如图:

【Linux】Ubuntu14.04安装bridge-utils安装brctl_第1张图片

这一步是为了避免make时出现错误,这个错误是:

In file included from libbridge.h:24:0,
                 from libbridge_devif.c:28:
/usr/include/linux/if_bridge.h:184:20: error: field ‘ip6’ has incomplete type
    struct in6_addr ip6;
                    ^
make[1]: *** [libbridge_devif.o] 错误 1

In file included from ../libbridge/libbridge.h:24:0,
                 from brctl.c:25:
/usr/include/linux/if_bridge.h:184:20: error: field ‘ip6’ has incomplete type
    struct in6_addr ip6;
                    ^
make[1]: *** [brctl.o] 错误 1

显然是使用了ip6的结构体,而没有引用in6.h头文件。

参考网页:https://lkml.org/lkml/2013/1/13/116


4、编译安装

输入:make

输入:make install


5、将命令brctl复制到/sbin下

输入:cp /usr/local/sbin/brctl  /sbin


6、验证

输入:brctl

可以显示brctl帮助信息

【Linux】Ubuntu14.04安装bridge-utils安装brctl_第2张图片


参考:http://blog.csdn.net/kulung/article/details/6923674

你可能感兴趣的:(linux,ubuntu,brctl,TUN,bridge-utils)