ImageBuilder制作潘多拉固件

  • 首页 > 技术文献
  • 作者:浪漫の小牛奶
  • 时间: 2021年6月27日 16:19
  • 字数:3658 个
  • 字号:
  • 评论:0 条
  • 浏览:4326 次
  • 百度:百度已收录
  • 分类: 技术文献
  • 时间:2021-6-27 16:19 热度:4326° 评论:0 条 

    基于ubuntu 18.04,安装依赖:

    apt update
    apt install build-essential libncurses5-dev zlib1g-dev gawk git  libssl-dev wget unzip python ocaml-nox help2man texinfo yui-compressor


    下载最新版本18.10的ImageBuilder:


    https://downloads.pangubox.com:6380/pandorabox/18.10/targets/ralink/mt7621/PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64.tar.xz
    tar Jxf PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64.tar.xz
    cd PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64

    查看可编译的固件型号及其包含的软件包:


    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

    默认的软件包在以下两个文件内:

    include/target.mk
    .profiles.mk

    开始使用默认配置制作k2p固件:



    make image PROFILE="k2p"
    遇到以下错误:



    regexp could be something like 'pkgname*' '*file*' or similar
     e.g. opkg info 'libstd*' or opkg search '*libop*' or opkg remove 'libncur*'
    Makefile:140: recipe for target 'package_install' failed
    make[2]: *** [package_install] Error 1
    make[2]: Leaving directory '/tmp/PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64'
    Makefile:110: recipe for target '_call_image' failed
    make[1]: *** [_call_image] Error 2
    make[1]: Leaving directory '/tmp/PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64'
    Makefile:196: recipe for target 'image' failed
    make: *** [image] Error 2
    因为在Makerfile 144行要预先安装kernel文件,而package没kernel软件包,下载kernel:



    wget https://downloads.pangubox.com:6380/pandorabox/18.10/targets/ralink/mt7621/packages/kernel_3.14.79-1_mipsel_1004kc_dsp.ipk -P packages/

    再次执行又出现错误:


    Collected errors:
     * opkg_install_cmd: Cannot install package dosfsck.
     * opkg_install_cmd: Cannot install package fkmod-leds-gpio.
     * opkg_install_cmd: Cannot install package kmod-ipt-nathelper.
     * opkg_install_cmd: Cannot install package mkdosfs.
     * satisfy_dependencies_for: Cannot satisfy the following dependencies for ralink-utils:
     *      kmod-ipt-nathelper-extra * 
    Makefile:140: recipe for target 'package_install' failed
    make[2]: *** [package_install] Error 255
    make[2]: Leaving directory '/tmp/PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64'
    Makefile:110: recipe for target '_call_image' failed
    make[1]: *** [_call_image] Error 2
    make[1]: Leaving directory '/tmp/PandoraBox-ImageBuilder-ralink-mt7621.Linux-x86_64'
    Makefile:196: recipe for target 'image' failed
    make: *** [image] Error 2

    因为新版的openwrt将kmod-ipt-nathelper-extra 更改为kmod-nf-nathelper-extra,而潘多拉的源package没修改依赖,使用以下脚本在制作时更新源后修改软件依赖项kmod-ipt-nathelper-extra为kmod-nf-nathelper-extra:

    #!/bin/bash
    for file in `ls dl/18.10*`;do
            echo $file;
            mv $file $file.gz
            gunzip $file.gz
            sed -i 's/kmod-ipt-nathelper-extra/kmod-nf-nathelper-extra/g' $file
            gzip -9 $file
            mv $file.gz $file
    done
    sed -i 's/kmod-ipt-nathelper/kmod-nf-nathelper/g' include/target.mk

    将以上保存为fix.sh到image build目录加可执行权限,并修改Makefile文件在122行$(MAKE) package_install前插入:


    $(TOPDIR)/fix.sh

    再次执行又遇到以下错误:

    Collected errors:
     * opkg_install_cmd: Cannot install package dosfsck.
     * opkg_install_cmd: Cannot install package fkmod-leds-gpio.
     * opkg_install_cmd: Cannot install package mkdosfs.

    因为上面这3个软件有的改名,有的名字写错,修复下:

    sed -i 's/fkmod-leds-gpio/kmod-leds-gpio/g' .profiles.mk
    sed -i 's/mkdosfs dosfsck/dosfstools/g' .profiles.mk
    然后重新编译即可完成

    文中提到的文件打包下载

    Pandora.zip




    正文到此结束
    您阅读这篇文章共花了: 
    本文链接:https://57scs.com/post-29.html
    版权声明:若无特殊注明,本文皆为《浪漫の小牛奶》原创,转载请保留文章出处。
    捐赠支持:如果觉得这篇文章对您有帮助,请“扫一扫”鼓励作者!

    热门推荐


    既然没有吐槽,那就赶紧抢沙发吧!
    返回顶部    返回首页    手气不错    捐赠支持    自定义链接    自定义链接    自定义链接    手机版本   后花园   
    版权所有:盛夏的回忆    站点维护: 浪漫の小牛奶   今天是:|本站已安全运行了: