找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 19832|回复: 101

2022 大麦DW33D路由器 OPENWRT PandoraBox SDK和ImageBuilder编译 XXR IPK和固件教程

 火.. [复制链接]
本帖最后由 nzm123 于 2022-3-7 22:13 编辑

2022年隆重更新教程,集合SDK编译ipk 和ImageBuilder打包固件两部分,底部有打包好的dw33d 潘多拉全新固件!

由于潘多拉DomyWifi DW33D 2.4G 5G都可以使用3*3mimo,比开源openwrt WiFi性能更好,但是潘多拉固件太老,许多ipk版本太老。特将利用SDK编译xxrplus 教程简单记录。

主要参考文章:环境
系统:Ubuntu 18.04.3 LTS (为了编译成功只能选择Ubuntu 18.XX LTS)
注意:不要在root下编译!
更新依赖
  1. sudo apt-get update
  2. sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib linux-libc-dev:i386
复制代码

SDK下载和解压
确认自己的设备支持的SDK。在http://pandorabox.tuuz.cc:8000/pandorabox/19.04/targets/ar71xx/generic/,找到对应的SDK包。下载解压
  1. wget --no-check-certificate <a href="http://pandorabox.tuuz.cc:8000/pandorabox/19.04/targets/ar71xx/generic/PandoraBox-SDK-ar71xx-generic_gcc-5.5.0_uClibc-1.0.x.Linux-x86_64-2019-04-05-git-b4ae2c0bd.tar.xz" target="_blank">http://pandorabox.tuuz.cc:8000/p ... it-b4ae2c0bd.tar.xz</a>
  2. &#8203;
  3. tar xvf PandoraBox-SDK-ar71xx-generic_gcc-5.5.0_uClibc-1.0.x.Linux-x86_64-2019-04-05-git-b4ae2c0bd.tar.xz
  4. &#8203;
复制代码

由于解压出来的文件名称比较长,用mv命令修改目录名称为pandorabox。
mv PandoraBox-SDK-ar71xx-generic_gcc-5.5.0_uClibc-1.0.x.Linux-x86_64-2019-04-05-git-b4ae2c0bd pandorabox
准备和编译修改download.pl文件中的下载地址 nano /pandorabox/scripts/download.pl
download.pl文件拉到最后,将拉取镜像更新如下:
  1. push @mirrors, 'http://pandorabox.tuuz.cc:8000/sources/';
  2. push @mirrors, 'http://downloads.pangubox.com:6380/sources/';
  3. push @mirrors, 'http://sources.lede-project.org';
  4. push @mirrors, 'http://mirror2.openwrt.org/sources';
  5. push @mirrors, 'https://sources.openwrt.org';
复制代码

软件包交叉编译
  • 使用我fork的软件包,不要用最新的lean包,因为pandorabox的内核版本比较低。

git clone --depth 1 https://github.com/anonymous12357/lede
如果地址失效了,自己fork个lean的代码,然后git checkout 到2019.12.4号左右的版本就行。luci,packages都要fork,并且时间尽可能相同,不要fork到带有19.07 openwrt版本的代码。feeds.conf.default修改如下,改用知名的helloworld
  1. src-git packages <a href="https://github.com/anonymous12357/packages" target="_blank">https://github.com/anonymous12357/packages</a>
  2. src-git luci <a href="https://github.com/anonymous12357/luci" target="_blank">https://github.com/anonymous12357/luci</a>
  3. src-git routing <a href="https://git.openwrt.org/feed/routing.git;openwrt-19.07" target="_blank">https://git.openwrt.org/feed/routing.git;openwrt-19.07</a>
  4. #src-git telephony <a href="https://git.openwrt.org/feed/telephony.git;openwrt-19.07" target="_blank">https://git.openwrt.org/feed/telephony.git;openwrt-19.07</a>
  5. src-git helloworld <a href="https://github.com/fw876/helloworld.git" target="_blank">https://github.com/fw876/helloworld.git</a>
复制代码

  • 然后将下载下来的 lean的package复制到pandorabox SDK的对应目录,节约下载时间。

  1. cp -r lede/package/lean pandorabox/package/
复制代码

  • 更新一下feed,然后选择要安装的package。

  1. ./scripts/feeds update -a && ./scripts/feeds install -a
  2. make menuconfig
复制代码

进入LuCI → Applications,并选上luci-app-ssr-plus。(下面插件自己决定选不选,kcptun不建议)然后save,并esc退出即可。没必要的luci包建议取消选择,因为后续步骤需要下载源码,有的luci包源码已经失效了无法找到了。
预下载软件包国内环境编译下,ubuntu使用proxychains全局代理下载 sudo apt-get install -y proxychains4
直接通过 apt 包管理工具就可以安装
sudo apt-get install -y proxychains4
安装完之后可以找到/etc/proxychains.conf或/etc/proxychains4.conf文件进行修改,一般请求下翻到最后一段修改代理服务器配置即可。只保留最后一个代理就行,代理到你的代理软件本地端口。
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks5  127.0.0.1 1080
保存后可以通过运行proxychains curl ipinfo.io测试是否为代理地址
下载源码  proxychains make download -j8 V=s
-j8指用8个线程下载,这里将数字改为你电脑cpu的线程数+1就行。耐心等待下载完,这样可以避免编译的时候出现网络错误导致浪费大量时间。
如果出错改用make download -j1 V=s,查看没有下载成功的软件包,放到dl目录下,然后再次运行下载命令,该步骤应该会下载6g以上文件,耗时长且容易出错
校验下载的文件的完整性(可选)
  1. find dl -size -1024c -exec ls -l {} \;
复制代码

如果有小于1k的文件,说明下载可能不完整,可以再次make download 。
不过我编译时用此命令检测出三个文件不正常,我下了很多次这三个都存在,但最后却不影响编译,所以如果(小于1k文件)数目多且明显时,可以反复检查。
编译软件包,比如luci-app-ssr-plus
ssr-plus依赖于luci的一些组件,故先编译luci-base :
  1. make package/feeds/kenzo/luci-app-ssr-plus/compile -j1 V=s
复制代码

如果编译v2ray包时,出现bash:/.../staging_dir/host/bin/upx: No such file or directory,请参考用OpenWrt单独编译ipk插件
编译途中发现错误原因是没有下载完全软件包办法
如果运行上述命令最终出现error,且原因提示没有对应软件包造成,请运行下面命令:
rm -rf ./tmp ./build_dir
make clean
然后
  1.   proxychains make download -j1 V=s
复制代码

确保最后没有出现错误后,再将pandorabox原始SDK包中的./build_dir复制到被删除的对应文件夹内
再次运行
  1. make package/feeds/kenzo/luci-app-ssr-plus/compile -j1 V=s
复制代码

软件包安装
注意路由自带安装包更新地址都要换成http://downloads.pangubox.com:6380。编译出ipk文件之后,将该文件上传到路由器tmp目录下,然后执行以下命令安装。
opkg install *.ipk
*:你的软件包名称。
如果无法安装,需要将编译出的ipk一个个自己安装


Image Builder 编译 PandoraBox 固件
http://pandorabox.tuuz.cc:8000/pandorabox/19.04/targets/ar71xx/generic/查看。找到最新的支持版本为路径,找到对应的Image Builder包。下载解压
wget --no-check-certificate http://pandorabox.tuuz.cc:8000/p ... it-b4ae2c0bd.tar.xz
&#8203;
  1. tar xvf PandoraBox-ImageBuilder-ar71xx-generic.Linux-x86_64-2019-04-05-git-b4ae2c0bd.tar.xz
复制代码

由于解压出来的文件名称比较长,用mv命令修改目录名称为ImageBuilder。
  1. mv PandoraBox-ImageBuilder-ar71xx-generic.Linux-x86_64-2019-04-05-git-b4ae2c0bd.tar.xz ImageBuilder
复制代码

然后 cd ./ImageBuilder,查看可运行命令,熟悉响应操作,其他教程可参考Image Builder 编译 Openwrt 固件
查看可编译的固件型号及其包含的软件包:
make info
#info显示的所有机型固件
make image
#仅制作k2p固件
make image PROFILE="k2p"
#安装额外的软件包,自编译软件先把软件放到packages/目录下
make image PROFILE="k2p" PACKAGES="wget"
#添加files目录内文件到固件内,如files/etc/config/network网络配置文件
make image PROFILE="k2p" FILES="files"
#查看更多选项
make help
参考编译教程
https://openwrt.org/zh/docs/guid ... ftware/imagebuilder
实际编译过程
  1. sudo add-apt-repository ppa:longsleep/golang-backports
  2. sudo apt update
  3. sudo apt install golang-go
复制代码

如果下边实际编译时出现缺少软件,请自己查找安装命令
可以使用以下命令获取路由器设备上当前安装的插件列表:
  1. echo $(opkg list-installed | sed -e "s/\s.*$//")
复制代码

把SDK编译出来ipk3个文件包直接复制到ImageBuilder packages/目录下
  1. make image PROFILE="domywifi-dw33d" PACKAGES="wget luci-app-ssr-plus luci-i18n-ssr-plus-zh-cn luci-app-adbyby-plus luci-i18n-adbyby-plus-zh-cn luci-app-vlmcsd luci-i18n-vlmcsd-zh-cn -mwan3 -arpbind" FILES="files"
复制代码


清理编译
如果重新编译需要清理临时构建文件和生成的固件,请使用该 make clean 命令.






本帖子中包含更多资源

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

×

评分

参与人数 2恩山币 +2 收起 理由
asheso*** + 1 强大的恩山!(以下重复1万次)
哎哟*** + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!

查看全部评分

顶,虽说我不懂
回复

使用道具 举报

支持楼主一下
回复

使用道具 举报

谢谢分享~~~~~~~~~~~
回复

使用道具 举报

支持支持支持
回复

使用道具 举报

pandorabox的性能是最好的。。。
回复

使用道具 举报

回复

使用道具 举报

支持楼主一下
回复

使用道具 举报

哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇
回复

使用道具 举报

支持一下,一直在找教程,终于找到了
回复

使用道具 举报

看看   感谢分享
回复

使用道具 举报

顶,虽说我不懂
回复

使用道具 举报

看看   感谢分享
回复

使用道具 举报

建议增加trojan,因为乳酸菌饮料+的基础版本不用自己编译就有现成可用的,只是不包含trojan。
回复

使用道具 举报

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

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

GMT+8, 2024-5-11 01:47

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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

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