交叉编译下载机optware需要的程序
http://uziq.freehosting.md/?tag=mss
大家都知道用ipkg update再ipkg install就可以安装和刷新你的rotrrent或者transmission了,但是如果你想降级该怎么办呢?比如新版本的程序被PT站点Ban了,或者新版本不稳定,其实只要先ipkg remove xxxx,然后ipkg install xxxxx.ipk就可以了,但是我们知道官方网站是不维护老版本的ipk文件的,那么如果我们没有自行备份老的ipk,我们从哪里获得老版本文件呢?
很不幸,答案是需要自己编译。当然还有一种情景是我们需要最新代码对应的编译好的ipk,但是官方还没有发布,那么也需要自己动手来编译再升级。
这里简单介绍如何自己搭建optware需要的交叉编译环境:
1、首先需要有一台linux系统的计算机,方便起见,可以用vmware虚拟一台,并直接加载现成安装好的系统镜像文件即可: vmware下载地址 http://www.sz1001.net/soft/1306.htm linux镜像下载地址,我自己选了centos5 http://www.thoughtpolice.co.uk/vmware/
2、启动linux后,需要配置ip地址、dns、samba,用yum安装gcc、svn、perl、lib-www-perl, bison, flex, texinfo, bison(transmission 2.2x需要)等,这里不一一详述
3、下载并准备mips编译环境: svn co http://svn.nslu2-linux.org/svnroot/optware/trunk optware export OPTWARE_TARGET=oleg cd optware make directories 开始编译所需的交叉编译环境 make toolchain 这里要等待很久,因为要下载编译用于MIPS芯片编译环境gcc什么的
4、开始编译,这里以transmission为例,注意如果需要选择不同的版本,需要先手工修改make文件夹里面transmission.mk文件里面的版本号,然后如果是编译2.1x或者以前的transmission,直接启动编译即可
make transmission-dirclean transmission-ipk
编译程序会自动下载需要的软件包,例如openssl、libz等,你去喝杯咖啡回来在mss/builds里面就可以找到生成的transmission_1.xx-1_mipsel.ipk了
如果是编译2.2x版本,现在暂时需要你手工修改libevent.mk文件,将版本号修改为2.0.10,否则transmission编译会失败。并且需要也单独编译一份libevent 2.0.10的ipk:make libevent-dirclean libevent-ipk,先安装这个ipk才能成功安装transmission的ipk。
将ipk拷贝到下载机,ipkg remove transmission ipkg install transmission_1.xx-1_mipsel.ipk就大功告成了!
各位同学注意,如果您用的不是oleg系统,请在export OPTWARE_TARGET时选自己对应的系统,否则编译出来的肯定不能用