首页 > 其他分享 >编译openwrt分支immortalwrt小结

编译openwrt分支immortalwrt小结

时间:2024-01-16 22:46:19浏览次数:31  
标签:immortalwrt make dev 编译 git scripts feeds 小结 openwrt

编译环境:ubuntu20.04 LTS,确保能连接github

获取必须依赖:

sudo apt update -y
sudo apt full-upgrade -y
sudo apt  install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
  bzip2 ccache clang cmake cpio curl device-tree-compiler ecj fastjar flex  gawk gettext  gcc -multilib \
  g++-multilib git gnutls-dev gperf haveged help2man intltool lib32gcc-s1 libc6-dev-i386 libelf-dev \
  libglib2.0-dev libgmp3-dev libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5 \
  libncursesw5-dev libpython3-dev libreadline-dev libssl-dev libtool lld llvm lrzsz  mkisofs msmtp \
  nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pip python3-ply \
  python-docutils python3-pyelftools qemu-utils re2c  rsync scons squashfs-tools subversion swig \
  texinfo uglifyjs upx-ucl unzip vim wget xmlto  xxd zlib1g-dev binfmt-support qemu-user-static \
gcc -10-aarch64-linux-gnu kernel-package fakeroot simg2img img2simg mkbootimg bison npm

拉取源码仓库:

#设置depth=1减小体积
git clone https://github.com/immortalwrt/immortalwrt.git --depth=1

更新feeds.conf

./scripts/feeds update -a

完成更新后,可修改源码根目录下feeds.conf.default文件实现增加软件源,以添加istore为例

#修改feeds.conf.default文件
nano ./feeds.conf.default
#在最底下增加istore源
src-git istore https://github.com/linkease/istore;main
#完成软件源添加后,执行更新命令
./scripts/feeds update -a

完成所有软件源导入后,执行安装命令

#install symlinks for all obtained packages into package/feeds/
./scripts/feeds install -a

个性化修改

 

进入编译菜单

make menuconfig

附:LEDE固件编译菜单选项详解

注:部分设备仅支持ext4格式(如ufi001c),建议在编译设置中关闭SquashFS文件系统格式,否则可能导致无法启动等问题。

 

完成配置后,点击save保存,配置文件默认保存在.config文件

#预下载资源
make download -j8 V=s

完成资源下载后,开始编译

#初次编译建议使用单线程编译方便查找错误
make -j1 V=s
#二次编译可选择多线程编译提高效率(j后数字为线程数)
make -j8 V=s

编译完成后,文件会输出到bin/target目录下。

备注:本文一开始使用了--depth参数减少体积,如果需要更新源码,必须全部删除重新拉取,如果需要二次编译更新,请去掉该参数。

#二次编译更新源码
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make clean

附录:UFI001C自动检测拓展坞启动脚本

##根据所连的外部设备切换gadget或者host,默认是gadget
sleep 3
grep 0 /sys/kernel/debug/usb/ci_hdrc.0/device | grep speed
if [ $? -eq 0 ]
then
echo host > /sys/kernel/debug/usb/ci_hdrc.0/role
fi
exit 0

 

标签:immortalwrt,make,dev,编译,git,scripts,feeds,小结,openwrt
From: https://www.cnblogs.com/umi02/p/17968724

相关文章

  • 手把手教学——OpenWrt新机的固件编译/定制
    手把手教学——OpenWrt新机的固件编译/定制目录手把手教学——OpenWrt新机的固件编译/定制背景硬件参数软件修改新增profile设备树内存Flash/分区表无线接口有线接口刷机问题修复背景手里有一台QCA的IPQ4019的路由器,为TP-Link的DecoM9Plus2.0。查了下OpenWrt已经支持这个CP......
  • Day50 简单小结:类与对象
    简单小结:类与对象1.类与对象类是一个模板:抽象对象是一个具体的实例2.方法定义,调用!3.对象的引用引用类型:基本类型(8)对象是通过引用来操作的:栈---->堆4.属性:字段Filed成员变量默认初始化:数字:00.0c......
  • 操作滚动条小结:scrollIntoView/animate等方法的来龙去脉
    操作滚动条可以通过锚点跳转,JS操作滚动条,与scrollIntoView等方法。对此,我来考古一下。锚点跳转滚动滚动条网页中的锚点跳转是HTML早期功能之一,锚点(anchor)跳转是1991年发布的HTML标准的一部分,这是超文本链接的基本特性。锚点跳转通过使用<a>标签的href属性来创建指向页面内部某......
  • 本周(2024.1.8-2024.1.14)C语言学习小结
    既然之前说了要尝试坚持写博客,那就试试吧。本周花在C语言上的时间不多,简要回顾一下。动态数组学习并实践了基本的动态数组知识,即calloc、malloc、relloc、free。以下是基本综合所学内容写的代码,实现动态数据添加。#include<stdio.h>#include<stdlib.h>intmain(){......
  • 简单小结类与对象
    类与对象类是一个模板(抽象),对象是一个具体的实例方法定义、调用!对应的引用引用类型;基本类型(8)对象是通过引用来操作的:栈-->堆属性:字段Field成员变量默认初始化:数字:00.0char:u0000boolean:false引用:null修饰符属性类型属性名=......
  • 大模型背景下计算机视觉年终思考小结(上)
    1.引言在过去的十年里,出现了许多涉及计算机视觉的项目,举例如下:使用射线图像和其他医学图像领域的医学诊断应用使用导航图像分析建筑物和土地利用率相关应用各种环境下的目标检测和跟踪,如交通流统计、自然环境垃圾检测估计等上述应用所采用的计算机视觉的方法遵循统一的标准流程:首......
  • Android Bluetooth 蓝牙开发/蓝牙协议 小结
    蓝牙术语蓝牙蓝牙术语:HFP(Hands-freeProfile)耳机模式:让蓝牙设备可以控制电话,如接听、挂断、拒接、语音拨号等,拒接、语音拨号要视蓝牙耳机及电话是否支持。HSP(HandsetProfile)耳机模式用于支持蓝牙耳机与移动电话之间使用蓝牙电话广播:BluetoothHeadsetClient.ACTION_CA......
  • openwrt编译记录
    最近在做openwrt的开发,因此这里记录一下过程:这里我用的编译环境是wsl2,虚拟机时ubuntu20.04,因为wsl可以更充分的使用电脑性能,这样编译的快点,实测我编译rk3568的openwrt固件大概就花了三个小时的样子。下面记录下步骤:1、配置上网环境这个步骤是必须的,不然会极大概率失败,我之前失......
  • # Cockpit开机自启动小结
    之前使用cockpit作开机自启动是手动修改/usr/lib/systemd/system/cockpit.service文件,其实是不规范的操作,配置自启动应该执行如下命令:$sudosystemctlenablecockpit.socketCreatesymlink/etc/systemd/system/socket.target.wants/cockpit.socket->/usr/lib/systemd/syste......
  • 随身WiFi刷OPENWRT作为旁路由
    分享一个小众需求的玩法,随身WiFi刷OPENWRT作为旁路由,说明一下,对于这方面我了解的并不深,有错误的地方欢迎指正。讲一下我的方案,一个带有USB接口并且能刷机的路由器(主路由)和刷好openwrt的随身WiFi(旁路由),它们俩都需要设置好rndis驱动。随身WiFi的rndis驱动如果不会设置,可以看看我另一......