找回密码
 立即注册
img_loading
智能检测中

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888广告投放联系QQ68610888
查看: 50084|回复: 62

【正式版--已修正一个问题】720N(V3 4M Flash) OpenWrt 编译教程

 火... [复制链接]
发表于 2012-9-4 23:30 | 显示全部楼层 |阅读模式
本帖最后由 7440909 于 2015-9-10 16:17 编辑

注意:antclan的帖子已加入模式切换开关的内容,需要的同学自己去看。
本人菜鸟一个,对OpenWrt也无任何基础,在此胡言乱语,望高手莫笑。
敬请参考下面几帖(感谢kukusail的提醒):
1。https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=83746
2。https://www.right.com.cn/forum/thread-91571-1-1.html

#########################以下不是正文但看看也无妨################


入手了一个720N v3 ,想自己学着编译自己专属的OpenWrt,但是由于自己对OpenWrt一无所知,便照着这篇antclan的:
   https://www.right.com.cn/forum/thread-91571-1-1.html
所讲的方法学着自己编译。但是过了八九天,编译了不下30遍还是错误的,就是lan口不起作用,电脑的lan口只能插在720N的wan口,因此也没法拨号,也不知道错误在哪儿。最后终于在无意中发现,原来按照antclan的帖子讲的去做是完全对的,我的错误(这算不上是错误吧)是network的配置写反了,具体参看这篇帖子的回复讨论13楼以下内容:
https://www.right.com.cn/forum/thread-100003-1-1.html

估计是编译时的环境差异吧,也有可能是lan口和wan口是反的。就因为一个network的配置文件,让我花了这么多天的时间。

#######################以上不是正文################################


#####################################正文开始##################################


     首先,保证你有一个Lunix操作系统,不管是运行在物理机上还是虚拟机上的都行,我的是运行在物理机上的Ubuntu12.0 LTS,CPU是AMD的, 因此,以下教程均基于这台机子,不保证在其他机子上也是这样。


一.编译环境准备:   
下面的命令安装编译OpenWrt所需要的软件
  1. sudo apt-get install build-essential asciidoc binutils bzip2 gawk gettext  git libncurses5-dev libz-dev patch unzip zlib1g-dev  subversion
复制代码
二.同步OpenWrt官方源码:    我用的是trunk版的,因此,以下基于trunk,一条一条的执行下面的命令(不包含“#”,特别提醒不要在命令前加sudo):
  1. # mkdir OpenWrt
  2. # cd OpenWrt
  3. # svn co svn://svn.openwrt.org/openwrt/trunk/
  4. #cd  trunk
  5. #svn up
  6. #  ./scripts/feeds update -a
  7. #  ./scripts/feeds install -a
  8. #  make defconfig
复制代码
三.执行 下面这条命令,同样也不要加sudo
  1. #make menuconfig
复制代码
出现下面的界面,需要设置的是有箭头的地方其他用默认就好




最后就这样(没画箭头的地方不需要改动,默认就行,等编译好对openwrt有大概了解后再去修改其他):

设置完成后保存。
至此,编译环境设置完成。
接下来就是改源代码使720N能用了,这个antclan老大的这篇帖子讲得很详细了,参看:https://www.right.com.cn/forum/thread-91571-1-1.html的编译教程(隐藏内容)
1.更改/OpenWrt/trunk/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr703n.c
  
  1.         ath79_init_mac(ath79_eth0_data.mac_addr, mac, 1);
  2.         ath79_init_mac(ath79_eth1_data.mac_addr, mac, 2);

  3.         ath79_register_mdio(0, 0x0);
  4.         ath79_register_eth(0);
  5.         ath79_register_eth(1);

  6.         ath79_register_wmac(ee, mac);
复制代码
效果如下:
2.更改 /OpenWrt/trunk/target/linux/ar71xx/base-files/lib/upgrade/platform.sh (这一步不做好像也无所谓)
  1.   local hwid
  2.                 local imageid


  3.                 hwid=$(tplink_get_hwid)
  4.                 [ "$hwid" = "07200103" ] && {
  5.                         hwid="07030101"
  6.                 }

  7.                 imageid=$(tplink_get_image_hwid "$1")
  8.                 [ "$imageid" = "07200103" ] && {
  9.                         imageid="07030101"
  10.                 }

  11.                 [ "$hwid" != "$imageid" ] && {
  12.                         echo "Invalid image, hardware ID mismatch, hw:$hwid image:$imageid."
  13.                         return 1
  14.                 }
复制代码
效果如下:


3.更改(主要是为了使路由的Router Model显示为    TP-LINK TL-WR720N V3/OpenWrt/trunk/target/linux/ar71xx/base-files/lib/ar71xx.sh
  1.         echo "$AR71XX_BOARD_NAME" > /tmp/sysinfo/board_name
  2.         echo "TP-LINK TL-WR720N V3" > /tmp/sysinfo/model
  3. }

  4. ar71xx_board_name()
复制代码
效果如下:


另外需要放在trunk目录下files文件夹中的所有文件我已经上传到华为网盘,http://dl.vmall.com/c08v3yq3w7,下载后解压放到trunk文件夹下就行了,注意由于文件所有权的问题,请用chown命令更改文件所有全,比如你当前的用户名为user,则运行命令
  1. chown  -R  user   /home/user/OpenWrt/trunk/files
复制代码
说明:
    把user换成你的账户名,比如我的账户名是onion,就这样
  1. chown  -R  onion   /home/onion/OpenWrt/trunk/files
复制代码
将files文件的所有权改为当前用户,不然可能会有错误。
要改的基本上就是这写了,完成后直接输入命令:
  1. make  V=99
复制代码
就行了。编译完成后的.bin文件在trunk/bin/ar71xx目录下。用固件头修改工具 http://dl.vmall.com/c0w7haa9y0 将*factor.bin的固件头修改(其实可以在编译前修改固件头的penWRt的固件头定义在 /OpenWrt/trunk/tools/firmware-utils/src/mktplinkfw.c 和/OpenWrt/trunk/target/linux/ar71xx/image/Makefile )为07200103,00000001,就可以刷了。但要做好路由变砖的心理准备,要救也挺简单的,参看这篇文章:
https://www.right.com.cn/forum/thread-100003-1-1.html

另外,由于编译平台不同的原因,lan口和wan口是反的,那就更改network的配置,具体参看这篇帖子https://www.right.com.cn/forum/thread-100003-1-1.html   13楼以下的内容,一定能解决。


不能保证一次成功,一定要做好变砖的准备,未雨绸缪总是对的,也要学会TTL修砖。在下可是反复编译了几十遍才成功的。



最后祝愿意自己动手的朋友能一击成功.附上这篇帖子https://www.right.com.cn/forum/thread-91571-1-1.html的截图,方便对比




评分

参与人数 4恩山币 +6 收起 理由
岑迅 + 1 谢谢分享@!!!
kuaner + 1 泥马,真给力,我要顶!
shuqiguo + 3 泥马,真给力,我要顶!
kukusail + 1 泥马,真给力,我要顶!

查看全部评分

只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 01:59 | 显示全部楼层
这帖子必须上精。正在编译试试!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 02:32 | 显示全部楼层

技术贴,文字真多啊
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 05:12 | 显示全部楼层
新手试了一下,总结下可能会遇到的问题,第一就是环境了
sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev

这个命令还好完整一点,第二
chown  -R  user   /home/OpenWrt/trunk/files

这里权限搞不懂还是找不到文件夹,路径摸索了很久 好像没错。

可以综合一下
https://www.right.com.cn/forum/f ... hread&tid=83746

比较适合新手入门,遇到的问就这两个,环境解决了,接着就是权限那里了!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 05:23 | 显示全部楼层
原装flash是4m,但改装成8m flash的话需要修改trunk/tools/firmware-utils/src/mktplinkfw.c以及trunk/target/linux/ar71xx/image/Makefile,找到自己的型号将4Mlzma改成8Mlzma
以上是举个例子
引用:https://www.right.com.cn/forum/f ... hread&tid=99792 4楼
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 08:58 | 显示全部楼层
收藏!
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 10:15 | 显示全部楼层
好帖收藏,
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 11:02 | 显示全部楼层
改型号等地方都比较勉强,虽然我也 不是很名白
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
 楼主| 发表于 2012-9-5 15:10 | 显示全部楼层
本帖最后由 7440909 于 2012-9-5 15:21 编辑
kukusail 发表于 2012-9-5 05:12
新手试了一下,总结下可能会遇到的问题,第一就是环境了
sudo apt-get install gcc g++ binutils patch bz ...

是路径写错了,应该这样 chown  -R  user   /home/user/OpenWrt/trunk/files

把user换成你的账户名,比如我的账户名是onion,就这样
chown  -R  onion   /home/onion/OpenWrt/trunk/files
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
 楼主| 发表于 2012-9-5 15:13 | 显示全部楼层
laoyangjp 发表于 2012-9-5 11:02
改型号等地方都比较勉强,虽然我也 不是很名白

如果搞清楚了OPenWrt的各文件的关系,完全可以在menuconfig里加入720N的支持的,现在正在搞这个呢。如果成功的话就再发一贴。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 17:37 | 显示全部楼层
7440909 发表于 2012-9-5 15:13
如果搞清楚了OPenWrt的各文件的关系,完全可以在menuconfig里加入720N的支持的,现在正在搞这个呢。如果成 ...

期待你的新作
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
 楼主| 发表于 2012-9-5 18:49 | 显示全部楼层
本帖最后由 7440909 于 2012-9-5 22:27 编辑
laoyangjp 发表于 2012-9-5 17:37
期待你的新作

已经搞好了,地址:https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=100342&page=1&extra=#pid587435

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-5 23:40 | 显示全部楼层
本帖最后由 kukusail 于 2012-9-6 00:08 编辑

问题算一步步解决了,不知道720 的USB供电 是不足还是怎样 脱机老不稳定。硬盘老自动挂掉。(路由没挂,Transmission也没挂,就硬盘不见了。挂载不上!)外置了电源给硬盘供电。之后好很多,两个小时候还是出现那样的问题。纠结 不知道是固件 还是硬盘问题 2.5移动硬盘。。。。我都已经用1A的电源给移动硬盘供电了! ext3的,待会ext4 看能稳定点不。aria2 没有相关编译教程 蛋疼,想用用不上
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
 楼主| 发表于 2012-9-6 15:46 | 显示全部楼层
kukusail 发表于 2012-9-5 23:40
问题算一步步解决了,不知道720 的USB供电 是不足还是怎样 脱机老不稳定。硬盘老自动挂掉。(路由没挂,Tra ...

慢慢搞吧,有耐心点。 搞好了写个教程出来,我对挂载还一窍不通,希望能看到你的经验帖。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2012-9-6 18:15 | 显示全部楼层
唉,我可能没讲清楚,抱歉了
我是觉得混恩山的都或多或少自己编译过,所以没讲那么详细,如果要讲那么详细,真很费力,精力实在有限。
然后这里大牛也很多,不想在他们面前献丑,所以很多地方一笔带过,怕被笑话啊,我也是小白啦
我想楼主能把教程写那么详细,很赞!

第一个成功注册到的是WAN口,第二个则是LAN口,所以如果ath79_register_eth(0)在前,而
把ath79_register_eth(1)放在后面的话,那么eth0就是WAN口了,自然eth1就是LAN口了。
但是可以把这两个语句调换下顺序,如这样:
   ath79_register_eth(1);
   ath79_register_eth(0);
   最后配置/etc/config/network 的话,eth1对应WAN,而eth0就是LAN。

点评

谢谢,学习了  发表于 2012-9-6 18:35
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛

只谈技术、莫论政事!切勿转播谣言!为了你也为了他人。
只谈技术、莫论政事!(点击见详情) 切记不要随意传播谣言,把自己的日子过安稳了就行,为了自己好也为了大家好。 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。

查看 »

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2025-6-6 07:28

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表