padora可以使用openwrt 单独编译ipk的ipk吗

LINUX之OPENWRT----OPENWRT&X86&安装使用教程&(未完成)
原文地址:/?p=66
一&下载&Openwrt&镜像文件&&
二&将镜像文件写入目标磁盘&&
2.1&&写盘工具&&
2.2&Physdiskwrite&写盘&&
2.3&win32diskimager&写盘&&
三&管理界面&&
3.1&openwrt&的控制台&&
3.1.1&&本机控制台
3.1.2&&远程控制台(telnet/SSH)&&
3.1.3&SSH&登录&&
3.1.4&winSCP&的使用&&
3.2&openwrt&的&web&管理界面&&
四&基本网络设置&&
4.1&web&管理界面设置网络接口&
4.2&&使用控制台设置网络接口&
4.3&&通过&winSCP&设置网络接口&
4.4&&各种上网方式的&network&设置&&
五&软件安装&&
5.1&web&界面安装软件&&
5.2&&命令行方式安装软件&
5.3&trunk&版&luci&界面安装&
5.4&luci&汉化&
六&N-WAN&的安装和使用&&
6.1&N-WAN&的安装&&
6.2&N-WAN&的设置&&
6.2.1&&多&WAN&口接入设置&&
6.2.2&&单&WAN&多拨的设置&&
七&挂载硬盘&&
7.1&&自动挂载&USB&移动硬盘,U&盘&&
7.2&手动挂载&IDE(SATA)硬盘&&
&===========================================================================================
说明:为了方便,此教程是在&VMware&下进行的相关操作。虚拟机设置过程暂不赘述。
(部分实体机安装时遇到网卡驱动不好的情况,需要自行编译将驱动加入&img&文件里,暂不为本文所讨论。)
一 下载&Openwrt&镜像文件
&在&openwrt&官网下载官方编译的&X86&img&文件。&地址:http://downloads.openwrt.org/snapshots/
Openwrt&官方提供&backfire&和&trunk&两个不通的编译版本。&区别在于,backfire&相对更加正式而稳定,而&trunk&则相对为更新的测试版本
此外:backfire&默认集成&luci&管理界面,而&trunk&版是没有&luci&的&web&管理界面的,需要自己手动安装。
同时,每个版本分别提供以不同磁盘格式下面的镜像。分别包括&ext2/ext4,jffs2,squashfs&三种格式。&为了方便,在这里我们选择的是&ext2/ext4&格式的镜像文件。
Backfire&&版下载地址:
http://downloads.openwrt.org/snapshots/backfire/10.03.1-RC5-testing/x86/generic/openwrt-x86-generic-combined-e&xt2.img.gz
Trunk&版下载地址:
http://downloads.openwrt.org/snapshots/trunk/x86/openwrt-x86-generic-combined-ext4.img.gz
&二 将镜像文件写入目标磁盘
&2.1&&写盘工具
&建议使用&CF&卡,电子盘等作为&Openwrt&的系统盘。小巧,安静,省电。
IMG&写盘工具通常使用&physdiskwrite&或者&Win32DiskImager&下载地
址:&Physdiskwrite:http://m0n0.ch/wall/downloads/physdiskwrite-
0.5.2.zip&Win32DiskImager:
http://launchpad.net/win32-image-writer/0.2/0.2/+download/win32diskimager-RELEASE-0.2-r23-win32.zip
对于&Openwrt&来说使用上面任何一个写盘工具都没有多大影响,但是对于某些软路由来说用&win32diskimager&写&入的时候会导致无法启动等情况。建议大家使用&physdiskwrite&写盘。
2.2&Physdiskwrite&写盘
&Physdiskwrite&是基于&DOS&的写盘工具,需要在&CMD&下面进行操作。
(1)将&Physdiskwrite.exe&和镜像文件放在同一目录里
(2)在&cmd&下面进入该目录,输入命令&Physdiskwrite.exe&&u&backfire.img&进行写盘。&其中-u&&参数为目标磁盘大于&800M&时需要附加的。
&(3)接下来会提示你选择需要写入磁盘。请注意选择,不要选错了。
【为了输入方便,可以将&Physdiskwrite.exe&改名为&pdw.exe&之类,命令输入&pd&w.exe&&&u&backfire.img&即&可】
判别正确磁盘,可以根据磁盘型号、、磁盘容量大小等因素来判别。&其中磁盘信息里面:cyl&表示柱面,tpc&表示磁头,spt&表示扇区&磁盘容量=(柱面&x&磁头&x&扇区&x&512)字节。
需要注意的是,将字节换算成&&MB&单位时,硬盘厂商是以&1000&为进制,而&windo&ws&系统是以&1024&为进制。
(4)&确定好具体的磁盘之后,输入相关数字序号。系统提示确认信息,选择&Y。
win32diskimager&写盘
win32diskimager&是一个图形化的磁盘写入工具。Win7&下面建议使用“以管理员身&份运行”
选择&img&文件,及磁盘序号。点击&write&即可
&三 管理界面
&将镜像写入磁盘后,便可以将磁盘或&CF&安装到用来做软路由的机器上面了。开机&。BIOS&里面设置为硬盘启动
Openwrt&的管理系统可分为控制台和&web&管理。(web&管理我们主要应用&luci&的管&理界面,此外还有&X-wrt&的管&理界面。喜欢的朋友可以自行安装)
3.1&openwrt&的控制台
&3.1.1&&本机控制台
&启动完成画面,在这里按下&enter&便可进入&Openwrt&的控制台。&在这里可以通过命令行的方式进行相关操作。
3.1.2&&远程控制台(telnet/SSH)
Openwrt&可以通过&LAN&或者&WAN,对系统进行管理控制。支持&telnet&及&SSH&登录。&注意:SSH&登录必须先设置&root&帐号的密码(系统默认密码为空)
系统账户&root&密码修改方式:
(1)&在控制台下面输入&passwd&root,设置密码
(2)&用&telnet&方法登录
在&secureCRT(或者其他支持&telnet&的工具)下面用&telnet&修改密码
&命令与本地控制台相同。Passwd&root
设置好密码之后,便可以用&SSH&进行登录。
3.1.3&SSH&登录
通常我们主要使用&secureCRT&或者&putty&这两款工具进行登录管理。
&SecureCRT&是一款支持&SSH(SSH1&和&SSH2)的终端仿真程序,同时支持&Telnet&和&rl&ogin&协议。SecureCRT&是一款
用于连接运行包括&Windows、UNIX&和&VMS&的远程系统的理想工具。&下载地址:.cn/securecrt.zip
使用步骤:
(1)&secureCRT&登录,登录协议选择为&SSH2
(2)&在接下来的回话选项中,协议选择为&SSH2,输入默认的&ip&地址(192.168.1.&1)&然后一直下一步。
(3)&回到连接选项卡,点击连接。会提示保存安全密钥,直接保存。
&(4)&然后根据提示输入用户名和密码,即进入&SSH&远程制台了。
&此外还可以使用&putty&来登录,Putty&是一个免费的、Windows&32&平台下的&telnet、&rlogin&和&ssh&客户端,但是功&能丝毫不逊色于商业的&telnet&类工具。
使用也很简单。具体设置就不赘述了。
Putty&下载地址:/p/puttycn/downloads/detail?name=putty_0.&60cn2.zip
3.1.4&winSCP&的使用
WinSCP&是一个&Windows&环境下使用&SSH&的开源图形化&SFTP&客户端。同时支持&SC&P&协议。它的主要功能就是在&本地与远程计算机间安全的复制文件。
通过&winSCP&我们可以直接将一些文件复制到&openwrt&系统目录里面,甚至直接编&辑文件。&下载地址:http://winscp.net/download/winscp433setup.exe
(1)&打开&winSCP,出现登录对话框,输入地址,协议选为&SCP
(2)&点击左边的&SCP/Shell&选项,去掉查找用户组前面的勾。
(3)&点击登录,输入用户名和密码,即可进入&winSCP&的主界面。
(4)&登陆后的操作与&FTP&客户端类似。
openwrt&的&web&管理界面
&当然,更简单直观的就是直接进入&web&管理界面进行设置。
Openwrt&的&web&管理界面主要有&luci&和&X-wrt。目前应用得比较多的是&luci,最新&版本为&1.0。&本教程以&luci&界面为主。
Backfire&版安装后,无需额外设置即可进入&web&管理界面。
&首次登录&web&界面时,会提示你设置密码。
此时的&root&密码为空。直接点击&login&即可进入。
进入之后,点击&System—Administration&在&Router&&Password&处设置管理密码。&这是必须的,只有这样才能使用&SSH&连接进行控制。
而&trunk&版默认是没有&luci&管理界面的,需要我们手动安装。具体安装见后文
四 基本网络设置
现在虽然能打开&openwrt&的&web&管理界面,或者远程登录控制台。但是,这个时&候还不能透过&openwrt&上网。
因为现在网络接口只有一个&lan&口,wan&口尚未设置。&主要有两个方法进行设置:
1:&&直接在&web&管理界面设置修改。
2:&&通过命令行(或者&winscp)方式修改,/etc/config/network&文件
web&管理界面设置网络接口
(1)登录&web&管理界面
(2)点击&network—interface,选择下方的&add&new&interface。进入如下页面
Name&of&the&new&interface&设置接口名称—-(设为&WAN,或者&WAN1&之类)
Cover&the&following&interface&选择网卡—-(在这里我们选择&eth1)&点击&submit
(3)点击&submit,便进入了接口编辑页面。
在&general&setup&选项卡里面,根据自身的网络情况进行设置。(静态&IP,DHCP,pp&poe,在这里我们选择&DHCP)
&Firewall&setting&选项卡里面,选择防火墙区域,设置为&WAN。(如果不设置防火墙&区域,将无法上网)
&设置完成后,点击&save&and&apply&应用设置。&如果一切正常。这个时候就可以正常上网了。
4.2&&使用控制台设置网络接口
&(1)SSH&登录,输入&vi&
/etc/config/network
出现如下的类似画面
&(2)移动光标,在根据你的&wan&接入方式,按快捷键&a,插入内容(设置内容见&3.4),在后面加入相关内容。
(3)设置完毕之后,按&esc,再输入:w&(保存),回车。按&esc,再输入:q(离开)
(4)重启。
4.3&&通过&winSCP&设置网络接口
通过&SSH&方式修改&network&配置文件,并不是很方便直观。我们可以直接利用&winSCP&登录&openwrt&来进行修改
network&文件。
(1)使用&winSCP&登录&openwrt
(2)&&在&winSCP&中直接打开/etc/config&目录,双击打开&network&文件
(3)&&在&winSCP&的文本编辑界面中,加入相关网络设置内容。
(4)&&保存,保存过程中会提示输入密码。
4.4&&各种上网方式的&network&设置
VI&&命令下无须输入&&’&&引号
DHCP&方式:
config&’interface’&’WAN’&option&’ifname’&’eth1&&option&’proto’&’dhcp’
静态方式:
config&’interface’&’WAN’&option&’ifname’&’eth1&&option&’proto’&’static’
option&’ipaddr’&’192.168.2.222&&option&’netmask’&’255.255.255.0&&option&’gateway’&’192.168.2.1&&option&’dns’&’192.168.2.1&
pppoe&方式:
config&’interface’&’WAN’&option&’ifname’&’eth1&&option&’proto’&’pppoe’
option&’username’&’&&option&’password’&’&
&五 软件安装
&Openwrt&提供了多种软件包安装的方式。包括通过&web&管理界面安装,以及命令行方式的安装。
5.1&web&界面安装软件
&Openwrt&的软件管理界面里面可以直接更新相关软件,下载安装新的软件,十分方便。&点击&system(系统)——software(软
件源)即进入&openwrt&的软件管理界面。&在这里可以(1)设置系统的软件源地址。(2)更新软件包列表(3)下载并安装软件包(4)移除已经安
件(4)安装软件源里面提供的软件
需要注意的是:官方编译的&openwrt&backfire&10.03&RC5&版本里面的软件源地址设置错误。导致无法正常更新和安&装软件,需要我们手动修改。
&(1)在管理界面点击&Edit&package&lists&and&installation&targets&进入&OPKG&Configurati&on&界面
(2)将第一行里面的网址
http://downloads.openwrt.org/backfire/10.03.1-rc5/x86/packages
http://downloads.openwrt.org/snapshots/backfire/10.03.1-RC5-testing/x86/generic/pa&ckages/
(3)点击&submit&确认
&5.1.1&&安装官方源提供的软件
(1)&确认&wan&口已经连通,openwrt&上网正常。
(2)&在软件管理界面点击,Update&package&lists&&更新软件包列表
(3)&容量显示条下面显示&Package&lists&updated:&OK&后,表示更新成功。
(4)&在&Available&packages&中选择你需要的软件包,每个软件包后面均附有简单介&绍。点击安装即可。
5.1.2&&通过网址下载安装
有的时候&ipk&软件包并不是在官方源提供的。这个时候就可以通过下载并安装的方&式来进行安装。
(1)找到你所需要的软件&ipk&包的地址,如&NWAN:&http://sutuo.tk/nwan_1.3i_all_lu&ci1.0.ipk
(2)在&Download&and&install&package:&&中输入&ipk&地址。点击&OK。
&(3)成功之后,会提示&Install&’****.ipk’:&OK
命令行方式安装软件
4.2.1&&直接下载安装
(1)通过&secureCRT&或&Putty&之类的&SSH&工具登陆&openwrt
(2)输入&opkg&update
(3)安装官方源提供的软件,可直接输入:opkg&install&&软件名称
安装其他下载地址的&ipk&包,输入:opkg&install&网址
如:opkg&install&http://sutuo.tk/nwan_1.3i_all_luci1.0.ipk
4.2.2&&下载后手动上传安装
(1)将网站上的&ipk&包下载到本机保存。
(2)使用&winSCP&将&ipk&包上传到/tmp&目录
(3)使用&SSH&工具登录,输入:
opkg&update
opkg&install&/tmp/***.ipk
5.3&trunk&版&luci&界面安装
(1)首先,设置&wan&口,使&openwrt&正确连上网络。(设置见四&&基本网络设置)
(2)通过控制台或者&SSH,使用&opkg&命令安装&luci.&&输入以下命令
opkg&update&opkg&install&luci
/etc/init.d/uhttpd&enable
/etc/init.d/uhttpd&star
5.4&luci&汉化
用以上的各种软件安装方法均可轻松实现&luci&的汉化。官方提供了名为&luci-i18n-chinese&的汉化包。&安装成功后,
在&system—&system—&language&and&style&的&language&选项中选
择&chinese,save&and&apply。&刷新页面之后,即变成了中文界面
六 N-WAN&的安装和使用
N-WAN&是由&openwrt&中文论坛的飞翔的天空开发的。N-WAN&可单线多拨、多线多拨进行叠加和负载平衡,并附&带指定出口功能。使用比较简单。在这里向飞翔的天空表示感谢。
需要注意的是&N-WAN&是基于&IP&的负责均衡,而不是基于&session。同时&N-WAN&的并发功能有限。
6.1&N-WAN&的安装
&N-WAN&并不在官方源内提供。因此需要到飞翔的天空的站点下载。然后进行安装。&安装方法可以使用第五章内提供的方法进行安装。Web&方式或者命令行方式。
N-WAN&下载地址:http://sutuo.tk/nwan_1.3i_all_luci1.0.ipk
安装完成后在网络选项里面便多出了”创建多&WAN&口”和”N-WAN”
6.2&N-WAN&的设置
&6.2.1&&多&WAN&口接入设置
(1)在网络—-接口界面添加&WAN2,WAN3……等。(具体可以参见&4.1&&web&管理界面设置网络接口),名字设定&无特殊限制,可根据自己爱好设置。注意设置好防火墙区域即可
(2)分别设置各&wan&口的网络连接方式。
(3)在&nwan&的设置界面。外网接口,添加你的&wan&口进去。(输入&wan&口名称,点击添加)
(4)路由权重的含义为,该接口所占带宽比值。如果带宽相同。则可设为相同数字即可,1:1&之类。而比如两&条不同带宽的宽带,一条为&2M,一条为&6M。此时负载权重可以设置为&2:6&或&1:3。
(5)&通常把指定出口规则配置的勾都去掉。当然你需要一些特殊配置的时候可以自行指定,如&PT&站点的&tracker
6.2.2&&单&WAN&多拨的设置
(1)点击“创建多&WAN&口”,进入如下页面
&(2)如图,在红色区域内设置&openwrt&X86&进行设置。如我们需要在&wan&口上进行&单线多拨。多拨次数为&5&拨。&则勾选:“开启”,“使用&macvlan&生成虚拟&wan&口”,虚拟&wan&口数量填&5.&点击“保存&&应用”。
(3)&此时,我们在网络—-接口&页面可以看到新生产的虚拟机&wan&口
&分别进入每个接口,设置网络连接方式。单线多拨,我们通常是是设置&pppoe&的&用户名和密码。如果你的网络&环境允许&5&拨,那么你的每个接口便分别波上号,并分别获取&IP&地址了。
(4)&点击&NWAN&选项,进入&nwan&设置页面。
设置多&wan&口之后,会默认打开&nwan。我们只需要做一点小小的设置。
A.&&在外网接口处设置你的自己运营商
&B.&&单线多拨时,路由权重通常不用设置。都为&1&即可。路由权重的含义为,该接&口所占带宽比值。如果带宽相
同。则可设为相同数字即可,1:1&之类。
C.&&通常把指定出口规则配置的勾都去掉。当然你需要一些特殊配置的时候可以自&行指定,如&PT&站点的&tracker
&特别注意:由于&NWAN&主要是针对路由器版本的&openwrt&开发,而非&X86。因此&在创建虚拟多&WAN&口的时候,&一定要注意
“从哪个&WAN&接口&生成虚拟&wan”。比如我们有&4&张网卡,可以设置&4&个&不同的&wan&口。为了能够正常&的使用单线虚拟多拨。四
个&wan&口的名称,应分别为&wan,wan100,wan200,wan30&0。否则&nwan&无法正常识别,&同时设置为其他名称是比
如&W1&之类,创建多&wan&口的设置页面里面也不能够提供名&为&W1&的&wan&接口选项。
七 挂载硬盘
7.1&&自动挂载&USB&移动硬盘,U&盘&
&(1)&使用&SSH&登录&openwrt,运行以下命令。
opkg&update
opkg&install&kmod-usb-ohci&kmod-usb2&kmod-usb-storage
opkg&install&kmod-fs-ext3&ntfs-3g&kmod-fs-vfat
opkg&install&mount-utils
opkg&install&block-mount&fdisk&&usbutils
(2)&通过&winSCP&登录在&openwrt,进入/etc/hotplug.d/block/。邮件新建文件&10-&mount
双击&10mount&编辑,输入以下内容:
&#&Copyright&(C)&2009&OpenWrt.org
blkdev=`dirname&$DEVPATH`
if&[&`basename&$blkdev`&!=&"block"&];&then
&device=`basename&$DEVPATH`
case&”$ACTION”&in
mkdir&-p&/mnt/$device
#&vfat&&&ntfs-3g&check
[&`which&fdisk`&];&then
isntfs=`fdisk&-l&|&grep&$device&|&grep&NTFS`
isvfat=`fdisk&-l&|&grep&$device&|&grep&FAT`
isfuse=`lsmod&|&grep&fuse`
isntfs3g=`which&ntfs-3g`
&isntfs=”"&isvfat=”"
#&mount&with&ntfs-3g&if&possible,&else&with&default&mount&if&[&"$isntfs"&-a&"$isfuse"&-a&"$isntfs3g"&];&then
ntfs-3g&-o&nls=utf8&/dev/$device&&/mnt/$device&elif&[&"$isvfat"&];&then
mount& -t vfat&
-o&iocharset=utf8,rw,sync,umask=0000,dmask=0000,fmask=0000&
/dev/$device
/mnt/$device
&mount&/dev/$device&&/mnt/$device
&if&[&-f&/dev/${device}/swapfile&];&then&mkswap&/dev/${device}/swapfile&swapon&/dev/${device}/swapfile
if&[&-f&/dev/${device}/swapfile&];&then
swapoff&/dev/${device}/swapfile
umount&/dev/$device
10-mount&文件也可以到这里下载:&&/c0jx4o6iky
(3)&&在&SSH&控制台里面运行命令:chmod&777&/etc/hotplug.d/block/10-mount
(4)&&重启之后,USB&移动硬盘、U&盘均可以自动挂载。同时在将会在&&系统选项里面增加一个“挂载点”的选&项。可以在“挂载点”选项里面查看挂载情况
&7.2&手动挂载&IDE(SATA)硬盘
通过&7.1&的设置,已经可以直接挂载移动硬盘等,但是机器内部连接的&IDE&硬盘不&会自动挂载,需要我们进行简&单的设置。
此外:NTFS&格式的硬盘挂载存在一定问题,争取近期解决。
(1)&利用磁盘工具将硬盘格式化为&EXT3&格式
(2)&进入&SSH&命令行模式
(3)&输入命令&fdisk&&l,查看本机相关的硬盘及分区信息
(4)&输入&mkdir&&/mnt/test&,其中&test&为你需要设置的挂点名称,可自己任&意设置。
(5)&输入&mount&/dev/sdb1&
/mnt/test&进行挂载。其中/dev/sdb1
/&mnt/test&按照你的实际情况进
&(6)打开“系统—挂载点”,刷新即可看到新挂载的硬盘。
(7)最后,挂载成功之后,打开“系统—启动项”,在本地启动脚本里面加入一&行
mount&/dev/sdb1&
/mnt/test,以便于系统启动之后进行自动挂载。(直&接编辑/etc/rc.local&文件也可)
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。9389人阅读
刚刚买了一个网件wndr4300路由器,快递还没送来就已经开始琢磨刷机的事了。卖家提供了一个明月的op固件,里面功能超级多但是非常臃肿,我在hg255d上的使用经验告诉我这样臃肿的包非常耗费CPU资源,而且会导致网速变慢和无故重启。恩山上大神编译的几乎都是添加了很多应用的固件。而我只需要一个ss功能就够了,最好有luci界面,所以决定自己编译出ipk包放到路由器上使用opkg安装。
注:OP的SDK算是比较好用的SDK工具了,可以自动帮你解决依赖问题,但是如果你使用潘多拉BOX的SDK或者LEDE的SDK就没有OP的这么好用了,往往会出现各式各样的错误,经常找不到依赖库等等。对此我又单独谢了一片文章介绍如何在潘多拉和LEDE SDK环境下编译IPK,有兴趣的可以看这篇:《》
首先去openwrt ss的github官网,&这上面只给了makefile文件,没有c源码,因为c源码都在Shadowsocks-libev项目上,在makefile时会自动的去github上下载一个tar包,然后编译那里面的文件,如/shadowsocks/openwrt-shadowsocks/releases/download/v2.5.5/shadowsocks-libev-2.5.5.tar.gz,如果你网速很慢可以把makefile中相关的url改掉换成本地下载好的tar包。正常情况下我们不需要修改makefile就能正常编译。
注意:在编译过程中会联网下载大量的依赖库,所以一定要保证网络畅通稳定,否则会频繁失败,我在下载依赖库的时候都不到2KB/s。
网上很多编译ss的教程都是2014年的,它们都是直接clone openwrt的源码,然后用openwrt的源码编译出很多编译工具再编译apk,这样做非常的耗时,我亲自试过大概花了3个多小时也没成功,自从有了SDK之后就不用这么麻烦了,编译过程10几分钟就可以搞定。同样github上也推荐我们使用SDK进行编译。
注意:SDK版本要选择适合你路由器及路由器上系统的,比如CC15.05 SDK编译出来的ipk不能装载trunc版上,反之亦然,所以我们要选择适合路由器上openwrt系统的SDK,下文以wndr4300 CC 15.05 版openwrt为例。
首先去openwrt的官网下载相关SDK,&如果你要编译的不是wndr4300,可以去根目录自己通过CPU,内存类型选择相应的SDK进行下载,这里就不废话了。
如上图,第一个黄线是编译固件要用的ImageBuilder,是编译完整固件用的,我们只编译ipk软件包所以用不到,第二个黄线就是我们要用的SDK文件了
第三个和第四个都是纯净版的OP系统,可以下载然后刷到wndr4300路由器里面,一个是原有OP网页刷,一个是原版或者tftp刷的固件。刷入这个固件然后再opkg安装我们编译出的ipk包就具备相关功能了。所以此时我们首先下载SDK。
下载完成之后放到一个好记而且没有权限限制的目录中,比如我在我的用户目录下建立一个叫OP_SDK的文件夹,然后把这个tar包放进去
注:我是用的winscp放进去的,在linux下可以直接使用wget&http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/nand/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2 来下载这个tar包
放上去之后我们解压这个tar包
tar xjf OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64.tar.bz2
解压完之后 OP_SDK目录下就会出现一个和tar包同名的文件夹,这里面就是我们要用到交叉编译的SDK了
然后做非常重要的一步,安装编译相关的依赖库文件,否则进不去make menuconfig
sudo apt-get update
sudo apt-get install git-core build-essential libssl-dev libncurses5-dev unzip gawk
sudo apt-get install subversion mercurial
而且还有非常重要的一步,是安装c编译环境,当初我就因为ccache没有安装导致一晚上都白忙活
sudo apt-get install ccache
因为ccache Ubuntu 16.04没有默认安装,导致编译的时候一直报&C compiler cannot create executables错误,浪费了很多时间
基本的环境安装完成之后,我们就可以开始编译工作了,注意保持网络畅通
根据github上的README即可
cd ./OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/
# 安装 feeds
./scripts/feeds update packages
./scripts/feeds install libpcre
# 添加 feeds(ss v2.5.6之后的版本)
git clone /shadowsocks/openwrt-feeds.git package/feeds
# 添加 feeds(ss 2.5.6版及之前,LEDE PandoraBox的SDK)
git clone /AlexZhuo/openwrt-feeds.git package/feeds
=============先到这里暂停=============
# 获取 Makefile
git clone /shadowsocks/openwrt-shadowsocks.git package/shadowsocks-libev
# 选择要编译的包 Network -& shadowsocks-libev
make menuconfig
# 开始编译
make package/shadowsocks-libev/compile V=99
现在我们先开始安装feeds,就是用来选择编译什么插件用的列表
安装feeds的第一行命令会联网下载feeds列表,比较费时,第二行会报miss index的warning,不用管。
然后克隆git上的makefile文件下来,如果你网速慢也可以自己下载然后放到./package/shadowsocks-libev下面去,注意这里不要改文件夹的名字,因为写死在makefile里面了
但是这里我们暂停一下,因为编译ss是一个完整的解决依赖-编译-连接的过程,很容易出错,而编译luci UI界面只需要简单的打包一下即可,所以不妨先编译一下luci体会一下。
git clone /shadowsocks/luci-app-shadowsocks.git package/luci-app-shadowsocks
# 编译 po2lmo (如果有po2lmo可跳过)
pushd package/luci-app-shadowsocks/tools/po2lmo
make && sudo make install
# 选择要编译的包 LuCI -& 3. Applications
make menuconfig
# 开始编译
make package/luci-app-shadowsocks/compile V=99
首先git克隆,此时在package目录下会出现一个luci的目录
然后继续执行,并不容易出错
然后选择编译luci的ipk通过make menuconfig
选择LuCI,确认时&M&选中,代表编译出ipk包
然后选择&Save&回车,保存后,连续选择&Exit&退出
上图直接选择&Ok&即可
然后我们就可以开始编译luci了
make package/luci-app-shadowsocks/compile V=99
因为不依赖c编译环境,所以不容易出错
然后去/bin/ar71xx/packages/base目录下就可以看到我们编译好的ipk了,把它取出来放到别的位置上然后删掉,我们准备开始编译ss
现在开始克隆ss的openwrt版并把刚才克隆的./package/luci-app-shadowsocks给删掉
注:本文以ss-libev v2.5.6为例,目前ss已经更新迭代多次,所以依赖库也不尽相同。所以git克隆完毕后要reset到2.5.6的版本
git clone /shadowsocks/openwrt-shadowsocks.git package/shadowsocks-libev
cd ./package/shadowsocks-libev
git reset --hard v2.5.6
注:如果你想编译v3.0以上的版本,还需要获得一些openwrt没有提供的依赖包的makefile,需要执行如下语句
# 添加 feeds
git clone /shadowsocks/openwrt-feeds.git package/feeds
然后像刚才选择luci一样在make menuconfig中选择ss
OpenSSL版支持的加密方法多,PolarSSL支持的加密方法少,看你的需求而定
注意:只编译上面选择的两个或者一个就好,不要选择第mbedTLS版,因为mbedtls需要第三方依赖库,而ubuntu是不给你自动安装的,会因为缺少依赖而编译失败
然后跟luci一样&Save&然后连续&Exit&
下面就是最激动人心的一步了,开始我们的c编译,连接过程
make package/shadowsocks-libev/compile V=99
在这个过程中会联网下载很多个依赖,要保证网络畅通然后静等,注意*不要*使用sudo权限!整个编译耗时大约2分钟左右,视网络状况而定
下图是下载某个依赖库
下图是下载Shadowsocks-libev的源码
如果没有报错就说明编译完成了
在这个编译过程中遇到问题退出是很正常的,完全不需要大惊小怪,而且随着版本的更新会不断的出现新的编译问题,就需要我们自己去解决。
多数的编译问题都是缺少依赖库或者网络不畅,需要我们仔细的查看config.log文件
查找这个文件的方法是执行
locate config.log
一般编译到哪一步失败就去看哪一步的config.log,我之前碰到的一个编译失败是因为没安装ccache,在上图黄线的config.log在文章最后贴出来
如果编译成功,我们可以在/bin/ar71xx/packages/base目录下看到编译好的ipk了,这两个ipk到时候只安装一个就好,不要都安装
现在挑一个你需要的ipk出来放到openwrt系统下使用opkg安装即可,还可以配合之前做好的luci UI界面ipk包
==============我是分隔线==============
经过漫长的等待,终于从快递手中收到路由器了,之前编译好的三个ipk包感觉已经躺了大半年了。现在终于可以刷进去了。怎么从wndr4300原版刷成op的纯净系统我就不说了,而且我已经让卖家卖给我之前就刷好一个CC版15.05.1的纯净系统,这个系统是我在恩山上找的,这里感谢一下作者xmit0806,该固件的帖子地址:
这个固件作者说支持了128M闪存(op官方版只支持32m闪存,浪费了90多mb),用dnsmasq-full替换了dnsmasq,添加了opkg软件源等,都是非常实用的。
注:如果刷该固件重启后不保留配置,重新用TFTP的方式刷一遍就好了,我就碰到过这个情况。还有虽然这个版本是15.05.1,但是使用15.05 SDK编译出来的ipk一样能用
好了言归正传,现在开始安装之前编译好的ipk包了。
首先看一下没安装之前的状态
看起来的确是很纯净,一个“服务”都没装,而且内存的空余很大,从上图可以看出,该机器之前没有安装ss-local服务
然后我通过winscp把编译好的ipk包上传到用户目录/root上去
这里winscp还有一些小坑,首先你的路由器必须设置了登陆密码才能用SSH登陆,SSH的用户名和密码就是路由器的登录名和登陆密码,这个在一进路由器后台就会用黄色的框提示你,直接修改就好,我选的登录名为root,密码为root,所以用户目录就变成了/root
还有winscp必须设置成scp协议,使用Ubuntu支持的sftp协议是登陆不进去的
然后我抱着必错的信念开始用opkg安装
果然不出我所料报错了,不过并不是什么大的问题,缺少两个依赖库,libpcre和libpthread
那怎么装这两个依赖包呢,手头有没有他们的ipk包。但是隐隐记得这个固件的作者添加了软件源,于是我打算拼死一搏
一搏有效,通过更新软件源的命令已经成功更新了base包和luci包,packages包更新太慢停掉就行,重要的是base
于是我根据上面的提示主动去openwrt的官网上去找packages包,找到了libpcre的依赖
还真让我找到了,赶紧下载下来放到路由器上(中间那个libpcre_8.38-1_ar71xx.ipk就是我们要用的)
注:packages包里要用的就它一个了,剩下的都在base包里
好了,解决了一个依赖,让我们先安装这个依赖再继续安装ss吧
哎呦,忘了还有一个依赖,opkg虽然下载的很慢,但是贴心的把这个依赖包的下载地址给打印出来了,那我就直接用迅雷下好放进去得了
放好了,我们开始安装吧
上图显示Openwrt已经成功安装了剩下的一个依赖和ss,看来我们SDK编译还是很成功的
现在让我们运行一下ss-local检验一下是否安装成功
ss-local有反应了,看来安装已经彻底成功了。
下面我们检查一下ss-redir的透明代理功能是不是好用,首先我们编写一个ss服务器的配置文件,监听0.0.0.0:1080(注意不能是127.0.0.1或内网地址,否则iptables无法转发)
然后调用ss-redir去执行该配置文件
看样子是启动成功了,而且最新版的Shadowsocks-libev可以使用-u参数支持udp转发,让我们再用netstat看看1080端口的情况
可以看出来,udp和tcp的1080端口均被ss-redir占用,说明启动成功了,下面只要配合iptables的转发就实现了透明代理了
上面只是一个简略版,完整的应该如下
iptables -t nat -A PREROUTING -d 127.0.0.0/24 -j RETURN
iptables -t nat -A PREROUTING -d 192.168.0.0/16 -j RETURN
iptables -t nat -A PREROUTING -d 10.42.0.0/16 -j RETURN
iptables -t nat -A PREROUTING -d 0.0.0.0/8 -j RETURN
iptables -t nat -A PREROUTING -d 10.0.0.0/8 -j RETURN
iptables -t nat -A PREROUTING -d 172.16.0.0/12 -j RETURN
iptables -t nat -A PREROUTING -d 224.0.0.0/4 -j RETURN
iptables -t nat -A PREROUTING -d 240.0.0.0/4 -j RETURN
iptables -t nat -A PREROUTING -d 169.254.0.0/16 -j RETURN
iptables -t nat -A PREROUTING -p tcp -s 192.168.1.1/16 -j REDIRECT --to-ports 1080然后用手机百度搜索ip,已经换成代理的ip啦。
更宝贵的是ss-redir自带DNS防污染功能,访问谷歌,facebook神马的都畅通无阻啦,然后我们再测个速研究一下路由器的负载能力(我是20M光纤)
看起来是非常不错的,几乎可以把带宽跑满
下面我们再去路由器后台看看进程
我们刚才执行的指令ss-redir已经显示在UI界面上了
到这ss的透明代理已经全部搞定了,但是有些人不喜欢用命令行去配置,而喜欢在路由器后台使用luci界面,于是我们把之前编译好的luci界面也装上吧
于是把luci的ipk传到路由器上去准备安装
没想到luci界面也需要依赖库,一看是ipset,是非常有用的东西,通过ipset可以配置dnsmasq-full通过域名进行代理规则的书写,可以克服iptables只能识别ip的短板
既然上面已经给出了ipk的下载地址,opkg下载的还这么慢,那我干脆继续用迅雷上吧,装上ipset以后我们继续
安装ipset居然也需要依赖包,是libmnl,同样办法先把这个装了再装ipset吧,没出现循环依赖就不错啦
果然解决了这两个依赖以后luci界面就装好了,让我们进路由器后台瞅瞅
呈贡啦,菜单多了一项“服务”,“影梭”就在里面,让我们点进去看看
果然是最新的luci和最新的ss,支持udp转发啦,可惜上面显示udp转发不可用,缺少依赖,这多亏了有luci,不然我还不知道我这udp转发没法用。
据我判断缺少的肯定是iptables-mod-tproxy,因为ip默认已经装载Openwrt里了,于是老办法,去Openwrt的官网找找去
果然配好软件源的opkg又帮我们自动定位到了下载地址,老办法迅雷上
好啦,这个udp转发的依赖已经顺利安装完毕了,我们刷新路由器后台看看
好啦,现在luci界面已经完美支持udp转发啦!整个教程到此结束,我把这次安装所用到的所有ipk包放在下面供大家免费下载,理论上说CC版15.05 wndr4300设备都可以通用的。
下图是我用到所有的ipk包
下面面的ip和shadowsocks-libev-polarssl应该不装,polarss支持的加密方式少,比如没有rc4-md5这种加密方式,推荐使用openssl版本也就是我上面说的版本,ip包Openwrt应该默认自带,如果没有的话可以安装,因为我没装过这个ip包不知道好不好用,其他的包按照依赖关系一个一个装上即可,推荐在CC 15.05.1的wndr4300纯净系统上安装,纯净系统可以用上面恩山大神的那个
下载地址:
本文用到的恩山大神提供的原版改良版纯净固件下载地址:.cn/forum/forum.php?mod=viewthread&tid=186099
下面再秀一下刚买的wndr4300
附:因为没安装ccache导致的无法编译的config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by PCRE configure 8.39, which was
generated by GNU Autoconf 2.69.
Invocation command line was
$ ./configure --target=mips-openwrt-linux --host=mips-openwrt-linux --build=x86_64-linux-gnu --program-prefix= --program-suffix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/lib --sysconfdir=/etc --datadir=/usr/share --localstatedir=/var --mandir=/usr/man --infodir=/usr/info --disable-nls --enable-utf8 --enable-unicode-properties --enable-pcre16 --enable-cpp
## --------- ##
## Platform. ##
## --------- ##
hostname = alex-ThinkPad-T430
uname -m = x86_64
uname -r = 4.4.0-36-generic
uname -s = Linux
uname -v = #55-Ubuntu SMP Thu Aug 11 18:01:55 UTC 2016
/usr/bin/uname -p = unknown
/bin/uname -X
/usr/bin/arch -k
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo
/bin/machine
/usr/bin/oslevel
/bin/universe
PATH: /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/host/bin
PATH: /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin
PATH: /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/bin
PATH: /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin
PATH: /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin
PATH: /usr/local/java/jdk1.8.0_91/bin
PATH: /opt/android-studio/gradle/gradle-2.14.1/bin
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /usr/local/games
PATH: /snap/bin
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2666: loading site script /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/include/site/mips
| #!/bin/sh
| . $TOPDIR/include/site/linux
| ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
| ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
| ac_cv_sizeof___int64=0
| ac_cv_sizeof_char=1
| ac_cv_sizeof_int=4
| ac_cv_sizeof_int16_t=2
| ac_cv_sizeof_int32_t=4
| ac_cv_sizeof_int64_t=8
| ac_cv_sizeof_long_int=4
| ac_cv_sizeof_long_long=8
| ac_cv_sizeof_long=4
| ac_cv_sizeof_off_t=8
| ac_cv_sizeof_short_int=2
| ac_cv_sizeof_short=2
| ac_cv_sizeof_size_t=4
| ac_cv_sizeof_ssize_t=4
| ac_cv_sizeof_u_int16_t=2
| ac_cv_sizeof_u_int32_t=4
| ac_cv_sizeof_u_int64_t=8
| ac_cv_sizeof_uint16_t=2
| ac_cv_sizeof_uint32_t=4
| ac_cv_sizeof_uint64_t=8
| ac_cv_sizeof_unsigned_int=4
| ac_cv_sizeof_unsigned_long=4
| ac_cv_sizeof_unsigned_long_long=8
| ac_cv_sizeof_unsigned_short=2
| ac_cv_sizeof_void_p=4
configure:2808: checking for a BSD-compatible install
configure:2876: result: /usr/bin/install -c
configure:2887: checking whether build environment is sane
configure:2942: result: yes
configure:3001: checking for mips-openwrt-linux-strip
configure:3028: result: mips-openwrt-linux-uclibc-strip
configure:3093: checking for a thread-safe mkdir -p
configure:3132: result: /bin/mkdir -p
configure:3139: checking for gawk
configure:3155: found /usr/bin/gawk
configure:3166: result: gawk
configure:3177: checking whether make sets $(MAKE)
configure:3199: result: yes
configure:3228: checking whether make supports nested variables
configure:3245: result: yes
configure:3383: checking whether make supports nested variables
configure:3400: result: yes
configure:3428: checking for style of include used by make
configure:3456: result: GNU
configure:3487: checking for mips-openwrt-linux-gcc
configure:3514: result: ccache_cc
configure:3783: checking for C compiler version
configure:3792: ccache_cc --version &&5
/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/ccache_cc: 2: exec: ccache: not found
configure:3803: $? = 127
configure:3792: ccache_cc -v &&5
/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/ccache_cc: 2: exec: ccache: not found
configure:3803: $? = 127
configure:3792: ccache_cc -V &&5
/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/ccache_cc: 2: exec: ccache: not found
configure:3803: $? = 127
configure:3792: ccache_cc -qversion &&5
/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/ccache_cc: 2: exec: ccache: not found
configure:3803: $? = 127
configure:3823: checking whether the C compiler works
configure:3845: ccache_cc -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -mips16 -minterlink-mips16 -fpic
-I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/include
-L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/lib
conftest.c
/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/ccache_cc: 2: exec: ccache: not found
configure:3849: $? = 127
configure:3887: result: no
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME &PCRE&
| #define PACKAGE_TARNAME &pcre&
| #define PACKAGE_VERSION &8.39&
| #define PACKAGE_STRING &PCRE 8.39&
| #define PACKAGE_BUGREPORT &&
| #define PACKAGE_URL &&
| #define PACKAGE &pcre&
| #define VERSION &8.39&
| /* end confdefs.h.
configure:3892: error: in `/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39':
configure:3894: error: C compiler cannot create executables
See `config.log' for more details
## ---------------- ##
## Cache variables. ##
## ---------------- ##
ac_cv_c_bigendian=yes
ac_cv_c_gettext_without_libintl=yes
ac_cv_c_littleendian=no
ac_cv_c_long_double=no
ac_cv_conv_longlong_to_float=yes
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_set=set
ac_cv_env_CC_value=ccache_cc
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -mips16 -minterlink-mips16 -fpic '
ac_cv_env_CPPFLAGS_set=set
ac_cv_env_CPPFLAGS_value='-I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/include '
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=set
ac_cv_env_CXXFLAGS_value='-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -mips16 -minterlink-mips16 -fpic '
ac_cv_env_CXX_set=set
ac_cv_env_CXX_value=ccache_cxx
ac_cv_env_GENHTML_set=
ac_cv_env_GENHTML_value=
ac_cv_env_LCOV_set=
ac_cv_env_LCOV_value=
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value='-L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/lib '
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_PKG_CONFIG_LIBDIR_set=set
ac_cv_env_PKG_CONFIG_LIBDIR_value=/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/pkgconfig:/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/share/pkgconfig
ac_cv_env_PKG_CONFIG_PATH_set=set
ac_cv_env_PKG_CONFIG_PATH_value=/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/pkgconfig:/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/share/pkgconfig
ac_cv_env_PKG_CONFIG_set=set
ac_cv_env_PKG_CONFIG_value=/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/pkg-config
ac_cv_env_VALGRIND_CFLAGS_set=
ac_cv_env_VALGRIND_CFLAGS_value=
ac_cv_env_VALGRIND_LIBS_set=
ac_cv_env_VALGRIND_LIBS_value=
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=x86_64-linux-gnu
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=mips-openwrt-linux
ac_cv_env_target_alias_set=set
ac_cv_env_target_alias_value=mips-openwrt-linux
ac_cv_file__dev_zero=yes
ac_cv_func___adjtimex=yes
ac_cv_func___va_copy=no
ac_cv_func__exit=yes
ac_cv_func_bcmp=yes
ac_cv_func_bcopy=yes
ac_cv_func_bzero=yes
ac_cv_func_cimag=yes
ac_cv_func_creal=yes
ac_cv_func_fchmod=yes
ac_cv_func_getaddrinfo=yes
ac_cv_func_getcwd=yes
ac_cv_func_getdomainname=yes
ac_cv_func_getpgrp_void=yes
ac_cv_func_getpwuid_r=yes
ac_cv_func_gettimeofday=yes
ac_cv_func_index=yes
ac_cv_func_lstat=yes
ac_cv_func_lstat_dereferences_slashed_symlink=yes
ac_cv_func_lstat_empty_string_bug=no
ac_cv_func_malloc_0_nonnull=yes
ac_cv_func_malloc_works=yes
ac_cv_func_memcmp_clean=yes
ac_cv_func_memcmp_working=yes
ac_cv_func_posix_getgrgid_r=yes
ac_cv_func_posix_getpwuid_r=yes
ac_cv_func_psignal=yes
ac_cv_func_pthread_key_delete=yes
ac_cv_func_realloc_0_nonnull=yes
ac_cv_func_realloc_works=yes
ac_cv_func_rename=yes
ac_cv_func_rindex=yes
ac_cv_func_setgrent_void=yes
ac_cv_func_setlocale=yes
ac_cv_func_setpgrp_void=yes
ac_cv_func_setresuid=no
ac_cv_func_setvbuf_reversed=no
ac_cv_func_stat_empty_string_bug=no
ac_cv_func_stat_ignores_trailing_slash=no
ac_cv_func_strerror=yes
ac_cv_func_strftime=yes
ac_cv_func_utimes=yes
ac_cv_func_va_copy=no
ac_cv_func_vsnprintf=yes
ac_cv_have_accrights_in_msghdr=no
ac_cv_have_broken_snprintf=no
ac_cv_have_control_in_msghdr=yes
ac_cv_have_decl_sys_siglist=no
ac_cv_have_openpty_ctty_bug=yes
ac_cv_have_space_d_name_in_struct_dirent=yes
ac_cv_header_netinet_sctp_h=no
ac_cv_header_netinet_sctp_uio_h=no
ac_cv_int64_t=yes
ac_cv_lbl_unaligned_fail=no
ac_cv_linux_kernel_pppoe=yes
ac_cv_linux_vers=2
ac_cv_pack_bitfields_reversed=yes
ac_cv_path_LDCONFIG=
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=ccache_cc
ac_cv_prog_STRIP=mips-openwrt-linux-uclibc-strip
ac_cv_prog_make_make_set=yes
ac_cv_regexec_segfault_emptystr=no
ac_cv_sctp=no
ac_cv_sizeof___int64=0
ac_cv_sizeof_char=1
ac_cv_sizeof_int16_t=2
ac_cv_sizeof_int32_t=4
ac_cv_sizeof_int64_t=8
ac_cv_sizeof_int=4
ac_cv_sizeof_long=4
ac_cv_sizeof_long_int=4
ac_cv_sizeof_long_long=8
ac_cv_sizeof_off_t=8
ac_cv_sizeof_short=2
ac_cv_sizeof_short_int=2
ac_cv_sizeof_size_t=4
ac_cv_sizeof_ssize_t=4
ac_cv_sizeof_u_int16_t=2
ac_cv_sizeof_u_int32_t=4
ac_cv_sizeof_u_int64_t=8
ac_cv_sizeof_uint16_t=2
ac_cv_sizeof_uint32_t=4
ac_cv_sizeof_uint64_t=8
ac_cv_sizeof_unsigned_int=4
ac_cv_sizeof_unsigned_long=4
ac_cv_sizeof_unsigned_long_long=8
ac_cv_sizeof_unsigned_short=2
ac_cv_sizeof_void_p=4
ac_cv_sys_restartable_syscalls=yes
ac_cv_time_r_type=POSIX
ac_cv_type_suseconds_t=yes
ac_cv_uchar=no
ac_cv_uint64_t=yes
ac_cv_uint=yes
ac_cv_ulong=yes
ac_cv_ushort=yes
ac_cv_va_copy=C99
ac_cv_va_val_copy=yes
am_cv_make_support_nested_variables=yes
as_cv_unaligned_access=yes
## ----------------- ##
## Output variables. ##
## ----------------- ##
ACLOCAL='${SHELL} /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39/missing aclocal-1.15'
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='$${TAR-tar}'
AM_BACKSLASH='\'
AM_DEFAULT_V='0'
AM_DEFAULT_VERBOSITY='0'
AR='mips-openwrt-linux-uclibc-gcc-ar'
AS='ccache_cc -c -Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -fpic'
AUTOCONF='${SHELL} /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39/missing autoconf'
AUTOHEADER='${SHELL} /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39/missing autoheader'
AUTOMAKE='${SHELL} /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39/missing automake-1.15'
AWK='gawk'
CC='ccache_cc'
CCDEPMODE=''
CFLAGS='-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -mips16 -minterlink-mips16 -fpic '
CPPFLAGS='-I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/include -I/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/include '
CXX='ccache_cxx'
CXXDEPMODE=''
CXXFLAGS='-Os -pipe -mno-branch-likely -mips32r2 -mtune=34kc -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -msoft-float -mips16 -minterlink-mips16 -fpic '
CYGPATH_W='echo'
DEPDIR='.deps'
DISTCHECK_CONFIGURE_FLAGS=''
DLLTOOL=''
DSYMUTIL=''
DUMPBIN=''
ECHO_N='-n'
EXTRA_LIBPCRE16_LDFLAGS=''
EXTRA_LIBPCRE32_LDFLAGS=''
EXTRA_LIBPCRECPP_LDFLAGS=''
EXTRA_LIBPCREPOSIX_LDFLAGS=''
EXTRA_LIBPCRE_LDFLAGS=''
GCOV_CFLAGS=''
GCOV_CXXFLAGS=''
GCOV_LIBS=''
GENHTML=''
HAVE_VISIBILITY=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LD='mips-openwrt-linux-uclibc-ld'
LDFLAGS='-L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/lib -L/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/lib '
LIBOBJS=''
LIBREADLINE=''
LIBTOOL=''
LTLIBOBJS=''
MAKEINFO='${SHELL} /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39/missing makeinfo'
MANIFEST_TOOL=''
MKDIR_P='/bin/mkdir -p'
NM='mips-openwrt-linux-uclibc-gcc-nm'
OBJDUMP='mips-openwrt-linux-uclibc-objdump'
OTOOL64=''
PACKAGE='pcre'
PACKAGE_BUGREPORT=''
PACKAGE_NAME='PCRE'
PACKAGE_STRING='PCRE 8.39'
PACKAGE_TARNAME='pcre'
PACKAGE_URL=''
PACKAGE_VERSION='8.39'
PATH_SEPARATOR=':'
PCRE_DATE=''
PCRE_MAJOR=''
PCRE_MINOR=''
PCRE_PRERELEASE=''
PCRE_STATIC_CFLAG=''
PKG_CONFIG='/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/host/bin/pkg-config'
PKG_CONFIG_LIBDIR='/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/pkgconfig:/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/share/pkgconfig'
PKG_CONFIG_PATH='/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/pkgconfig:/home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/share/pkgconfig'
PTHREAD_CC=''
PTHREAD_CFLAGS=''
PTHREAD_LIBS=''
RANLIB='mips-openwrt-linux-uclibc-gcc-ranlib'
SET_MAKE=''
SHELL='/bin/bash'
STRIP='mips-openwrt-linux-uclibc-strip'
VALGRIND_CFLAGS=''
VALGRIND_LIBS=''
VERSION='8.39'
VISIBILITY_CFLAGS=''
VISIBILITY_CXXFLAGS=''
WITH_GCOV_FALSE=''
WITH_GCOV_TRUE=''
WITH_JIT_FALSE=''
WITH_JIT_TRUE=''
WITH_PCRE16_FALSE=''
WITH_PCRE16_TRUE=''
WITH_PCRE32_FALSE=''
WITH_PCRE32_TRUE=''
WITH_PCRE8_FALSE=''
WITH_PCRE8_TRUE=''
WITH_PCRE_CPP_FALSE=''
WITH_PCRE_CPP_TRUE=''
WITH_REBUILD_CHARTABLES_FALSE=''
WITH_REBUILD_CHARTABLES_TRUE=''
WITH_UTF_FALSE=''
WITH_UTF_TRUE=''
WITH_VALGRIND_FALSE=''
WITH_VALGRIND_TRUE=''
ac_ct_AR=''
ac_ct_CC=''
ac_ct_CXX=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__fastdepCXX_FALSE=''
am__fastdepCXX_TRUE=''
am__include='include'
am__isrc=''
am__leading_dot='.'
am__nodep='_no'
am__quote=''
am__tar='$${TAR-tar} chof - &$$tardir&'
am__untar='$${TAR-tar} xf -'
ax_pthread_config=''
bindir='/usr/bin'
build='x86_64-linux-gnu'
build_alias='x86_64-linux-gnu'
build_cpu=''
build_os=''
build_vendor=''
datadir='/usr/share'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
enable_cpp='yes'
enable_pcre16='yes'
enable_pcre32=''
enable_pcre8=''
exec_prefix='/usr'
host='mips-openwrt-linux'
host_alias='mips-openwrt-linux'
host_cpu=''
host_os=''
host_vendor=''
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='/usr/info'
install_sh='${SHELL} /home/alex/Downloads/SDK/OpenWrt-SDK-15.05-ar71xx-nand_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/pcre-8.39/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='/usr/lib'
localedir='${datarootdir}/locale'
localstatedir='/var'
mandir='/usr/man'
mkdir_p='$(MKDIR_P)'
oldincludedir='/usr/include'
pcre_have_bits_type_traits=''
pcre_have_long_long=''
pcre_have_type_traits=''
pcre_have_ulong_long=''
pdfdir='${docdir}'
prefix='/usr'
program_transform_name='s&$$&&;s&^&&'
psdir='${docdir}'
sbindir='/usr/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='/etc'
target_alias='mips-openwrt-linux'
## ----------- ##
## confdefs.h. ##
## ----------- ##
/* confdefs.h */
#define PACKAGE_NAME &PCRE&
#define PACKAGE_TARNAME &pcre&
#define PACKAGE_VERSION &8.39&
#define PACKAGE_STRING &PCRE 8.39&
#define PACKAGE_BUGREPORT &&
#define PACKAGE_URL &&
#define PACKAGE &pcre&
#define VERSION &8.39&
configure: exit 77
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:410805次
积分:4825
积分:4825
排名:第6511名
原创:140篇
评论:185条
(4)(7)(1)(3)(1)(2)(2)(2)(1)(3)(9)(9)(5)(9)(3)(6)(6)(5)(1)(1)(5)(17)(19)(12)(8)
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'

我要回帖

更多关于 openwrt ipk 强制安装 的文章

 

随机推荐