美文网首页程序员
Debian 9 64bit下编译Openwrt

Debian 9 64bit下编译Openwrt

作者: 龜山島 | 来源:发表于2018-04-27 14:50 被阅读0次

    固件需要在非root环境下进行

    一,源码构建

    安装所需环境:

    sudo apt-get install gcc zlib1g-dev subversion unzip make python flex git libncurses5-dev build-essential libssl-dev gawk gettext
    

    在非root下,用户的home目录取LEDE源码:

    git clone https://github.com/openwrt/openwrt.git
    

    源码下载完成后运行:

    cd source
    ./scripts/feeds update -a
    ./scripts/feeds install -a
    make defconfig
    make prereq
    make menuconfig
    make tools/install && make toolchain/install
    

    选择自己需要定制的路由和各种软件包,执行编译:

    make V=s           ## 多核CPU的话,可以加上参数 "-j 3",3是CPU的核心数加1,根据自己的实际情况而定,如果make过程出现错误,就不要使用这个参数。
    

    接下来就是漫长的等待..............
    编译完的固件保存在当前的bin目录下。

    清理作业有三个命令:make cleanmake dircleanmake distclean,第一个会清理掉bin和build_dir文件夹,第二个会清理掉/bin, /build_dir, /staging_dir 和 /toolchain,第三个会清理全部,恢复到刚拉取的源码状态,feeds也要重做。

    二,用image builder 快速构建

    以tl-wr841-v5路由为例:

    wget https://downloads.lede-project.org/releases/17.01.0/targets/ar71xx/generic/lede-imagebuilder-17.01.0-ar71xx-generic.Linux-x86_64.tar.xz
    tar -xf lede-imagebuilder-17.01.0-ar71xx-generic.Linux-x86_64.tar.xz
    cd lede-imagebuilder-17.01.0-ar71xx-generic.Linux-x86_64
    make info #查看默认软件包和硬件支持列表
    make image PROFILE="tl-wr841-v5" PACKAGES="luci luci-i18n-base-zh-cn -ppp -ppp-mod-pppoe" -j2 ## 指定机型+双线程,PACKAGES变量指定了一个要被包含进去的包文件的列表。如果一个包文件的名字前面有一个前缀"-"减号,那么这个文件会被从镜像中排除出去。
    

    这样很快就能编译完成,刷入路由,直接用192.168.1.1登陆就可以设置。

    关于路由不能达到300M的设置方法:
    SSH 登陆路由

    uci set wireless.radio0.hwmode=11bgn
    uci set wireless.radio0.noscan=1
    uci commit
    reboot
    

    构建单个包

    为OpenWrt开发或打包软件时,可以方便地只构建需要的包(以cups包为例):

    make package/cups/compile V=99
    

    如果是在feeds下安装的

    make package/feeds/packages/cups/compile v=99
    

    高亮构建错误

    如果构建不知怎么搞的出错了,亮出错误的最简单方式是:

    make V=99 2>&1 | tee build.log | grep -i error
    

    以上命令会保存一份详尽的编译输出到/openwrt/trunk/build.log,并只在屏幕上输出错误。

    相关文章

      网友评论

        本文标题:Debian 9 64bit下编译Openwrt

        本文链接:https://www.haomeiwen.com/subject/dyiblftx.html