V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
systemcall
V2EX  ›  Linux

有办法自己给 Linux 开发板编译一个新系统吗?

  •  
  •   systemcall · 2022-10-01 23:43:32 +08:00 · 2969 次点击
    这是一个创建于 571 天前的主题,其中的信息可能已经有所发展或是发生改变。

    板子是 Rock Pi E ,官网上只有 Ubuntu 18.04 ,很老,内核也只有 4.几
    想弄一个新点的内核,跑 openwrt 。官网的 OpenWRT 很老,而且似乎装不上软件
    要跑 Docker 。感觉没必要用 Ubuntu ,管理起来还麻烦

    8 条回复    2023-06-18 02:19:40 +08:00
    printese
        1
    printese  
       2022-10-02 02:39:31 +08:00 via iPhone
    可以试试找个现成的 Armbian ,或者自己把源码拉下来编译
    Puteulanus
        2
    Puteulanus  
       2022-10-02 03:48:15 +08:00
    可以用 flippy 的打包仓库
    https://github.com/unifreq/openwrt_packit

    从 armbian 那边抄一下 Rock Pi E 的 dts
    https://github.com/armbian/build

    他这个近似用 armbian 的内核拉起 openwrt 的 rootfs ,用他编译的内核或者你自己用 armbian 的库编译内核都行
    JohnBull
        3
    JohnBull  
       2022-10-02 13:04:22 +08:00
    buildroot2 起飞~
    systemcall
        4
    systemcall  
    OP
       2022-10-02 14:00:22 +08:00
    @Puteulanus #2
    flippy 那边没有这个板子,所以我自己编译了一下 armbian 的内核
    但是编译出来是一堆.deb 的包,怎样把这些包转换成所需要的.tar.gz 的包呢?
    Puteulanus
        5
    Puteulanus  
       2022-10-02 16:06:31 +08:00
    @systemcall 可以编译 Rock Pi E 的完整固件,然后用 losetup 挂载固件从 /boot 里拷

    他打包仓库需要的内核的 initrd ,是用 qemu 在 armbian 的 rootfs 下安装 kernel 的 deb 然后 mkinitrd 得到的,手工搞的话比较麻烦,我一般是嫖 armbian 构建框架的产物,有个脚本修改 armbian 的构建过程,把需要的东西在构建的过程中薅出来 https://github.com/puteulanus/flippy-kernel-build

    也可以直接用他 tg https://t.me/openwrt_flippy 发的成品内核,他编译的内核是通用的,不同的机型加载自己的 dtb 让内核变成自己特化的,所以改一下构建脚本(比如用同是 RK3328 的贝壳云的)加载 Rock Pi E 的 dtb 应该就行( dtb 是 dts 的编译产物)

    你可以先试试把他发布的贝壳云固件里的 dtb 替换成 Rock Pi E 的刷进去看看( losetup 挂载替换,或者 Windows 用 disk genius 修改虚拟磁盘),都是 RK3328 的,应该能跑起来
    systemcall
        6
    systemcall  
    OP
       2022-10-02 19:28:21 +08:00
    @Puteulanus #5
    试了一下,只替换 dtb ,可以跑起来。用的是 RK3328 的 CPU 的其他型号,功能基本正常
    但是 full cone nat 似乎没法打开,不知道是不是得用 immortalwrt 的内核。我是用的 immortalwrt 的 rootfs
    linuxgo
        7
    linuxgo  
       2022-10-04 10:17:24 +08:00
    armbian,openwrt 都是可以自己编译的
    1715173329
        8
    1715173329  
       312 天前 via Android
    @systemcall 挖坟,现在 ImmortalWrt 已经原生支持 Rock Pi E 了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5421 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 08:59 · PVG 16:59 · LAX 01:59 · JFK 04:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.