afellow 发表于 2004-5-8 19:05:42

Debian中如何编译得到一个 tun.o module ?

在Skyeye的安装中需要tun.o 模块,readme中说:
b. should setup&install linux kernel driver tuo.o
(in RedHat, the file is/lib/modules/2.4.x/kernel/drivers/net/tun.o)
(if tun.o isn't in your system, just compile linux kernel to get a tun.o
module)
c.1 run tun driver module:
      #insmod /lib/modules/2.4.x/kernel/drivers/net/tun.o

在debian中没有tun.o这个文件,因此按照说明,我必须编译内核才能得到,
还请指教具体操作是?
网上我找了半天,什么都没有发现 !

prox2004 发表于 2004-5-9 00:52:22

同问,是否有2.2下可用的tun/vnet,不然只好自己搞移植?
首先感谢大虾的skyeye.兼容性做得不错.
初次搞skyeye, 只花了几小时的时间,就搞定了skyeye+ucos2+uclinux
我的系统比较老,kernel2.2.5,egcs-2.91.66,(RH6系统)
看到chyyuu推荐RH9,本来心里怕怕.
不过,改了几个编译问题,去掉skyeye-ne2k, skyeye_net_tuntap.c, vnet
的一些代码.就很快了.

chyyuu 发表于 2004-5-9 10:02:24

我没有在2.2.x的内核下试过。
能否把你安装的步骤比较详细地写下来,让更多的人知道?谢谢!

wlm在debian下编译过,楼顶的可以问他!
看skyeye主页中的aboutus可以找到wlm的email。

prox2004 发表于 2004-5-9 15:09:23

既然chyyuu吩咐,就多写几句.
后来总算搞定tun.c      
skyeye对2.2的兼容性是做得不错的
有些细节记不清楚了.基本上是按照那个中文的安装文档来就可以了
1)./configure --target=arm-elf --prefix=/usr/local --without-gtk-prefix \
    --without-gtk-exec-prefix --disable-gtktest
2)编译时好象如下问题:
a.timeval没有定义,加上头文件
b.去掉所有的#include <if_tun.h>
c.在skyeye_net_tuntap.c中去掉ioctl的一段
d.skyeye_net_vnet.c好象不用动?
3)从http://cvs.sourceforge.net/viewcvs.py/vtun/tun/linux/2.2/
download iftun.h, tun.c 的for 2.2代码.compile/insmod/
好象要加个TUN_VER的定义
4) mknod /dev/net/tun c 90 128 其中90/128基本上是tun.c
和skyeye_net_vnet.c定的,为了使用tap0
5)其他基本按照文档来就可以了
6)vnet没有

prox2004 发表于 2004-5-9 15:15:11

另外,skyeye_net_tuntap.c中ioctl的IFF_NO_PI现在去掉后,不知影响大么?需要琢磨一下
简单测试了一下网络,没有发现问题
页: [1]
查看完整版本: Debian中如何编译得到一个 tun.o module ?