女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

fireflyAIO-3288C主板編譯Buildroot固件簡介

firefly ? 來源:firefly ? 作者:firefly ? 2019-12-16 14:55 ? 次閱讀
編譯 Buildroot 固件

本章介紹 Buildroot 固件的編譯使用。

準備工作
下載源碼

下載repo工具:

mkdir linux cd linux git clone https://github.com/FireflyTeam/repo.git

下載 Linux-SDK:

  • 方法一
mkdir linux-sdk cd linux-sdk # 初始化repo倉庫 ../repo/repo init --repo-url https://github.com/FireflyTeam/repo.git -u https://github.com/FireflyTeam/manifests.git -b linux-sdk -m rk3288/rk3288_linux_release.xml # 同步源碼 ../repo/repo sync -c
  • 方法二

下載 Linux-SDK GPT源碼包

# 把壓縮包放在上一步下載repo工具的目錄下 7z x linux-sdk-3288.7z # 更新代碼 repo sync -c
配置編譯環境

安裝編譯所需工具,確保工具都正確安裝:

  • Ubuntu 14.04 軟件包安裝:
$ sudo apt-get install git gnupg flex bison gperf build-essential \ zip tar curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \ libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \ libgl1-mesa-dev g++-multilib mingw32 cmake tofrodos \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386 lzop lib32stdc++6 $ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
  • Ubuntu 16.04 軟件包安裝
sudo apt-get install git gcc-arm-linux-gnueabihf u-boot-tools device-tree-compiler mtools \ parted libudev-dev libusb-1.0-0-dev python-linaro-image-tools linaro-image-tools libssl-dev \ autotools-dev libsigsegv2 m4 libdrm-dev curl sed make binutils build-essential gcc g++ bash \ patch gzip bzip2 perl tar cpio python unzip rsync file bc wget libncurses5 libglib2.0-dev openssh-client lib32stdc++6
  • 安裝 ARM 交叉編譯工具鏈和編譯內核相關軟件包:
$ sudo apt-get install gcc-arm-linux-gnueabihf \ gcc-aarch64-linux-gnu device-tree-compiler lzop libncurses5-dev \ libssl1.0.0 libssl-dev
編譯SDK
配置編譯文件

選擇開發板對應的配置文件。配置文件會鏈接到 device/rockchip/.BoardConfig.mk,查看該文件可確認當前所使用的配置文件:

./build.sh aio-3288c.mk # 文件路徑在 `device/rockchip/rk3288/aio-3288c.mk`

.mk 文件默認配置為編譯 Buildroot 固件,下面對 Buildroot 相關配置進行說明:

# Buildroot config export RK_CFG_BUILDROOT=rockchip_rk3288 # Buildroot 根文件系統配置文件 # 文件路徑在 `buildroot/configs/rockchip_rk3288_defconfig`
# Recovery config export RK_CFG_RECOVERY=rockchip_rk3288_recovery # recovery 模式下根文件系統配置文件(可省略) # 文件路徑在 `buildroot/configs/rockchip_rk3288_recovery_defconfig`
# rootfs image path export RK_ROOTFS_IMG=buildroot/output/$RK_CFG_BUILDROOT/images/rootfs.$RK_ROOTFS_TYPE # Buildroot 根文件系統鏡像路徑 # 本例中,文件路徑在 `buildroot/output/rockchip_rk3288/images/rootfs.ext4` # 注:該文件路徑將在首次編譯根文件系統后生成

執行編譯命令時,將會根據 .mk 文件進行編譯。

全自動編譯

全自動編譯會編譯并打包固件 update.img,生成固件目錄 rockdev/

./build.sh
部分編譯
  • 編譯 kernel
./build.sh kernel
  • 編譯 u-boot
./build.sh uboot
  • 編譯 rootfs

編譯 Buildroot 根文件系統,將會在 buildroot/output 生成編譯輸出目錄:

./build.sh buildroot # 注:確保作為普通用戶編譯 Buildroot 根文件系統,避免不必要的錯誤。編譯過程中會自動下載所需軟件包,請保持聯網狀態
固件打包
更新鏈接

為確保 rockdev/ 目錄下文件鏈接正確,更新各部分鏡像鏈接:

./mkfirmware.sh
打包固件

rockdev 目錄的各部分鏡像打包成固件 update.img

./build.sh updateimg
Buildroot 介紹
output 目錄

Buildroot 編譯輸出結果保存在 output 目錄,具體目錄由配置文件決定,本例保存在 buildroot/output/rockchip_rk3288 目錄,后續可以在該目錄執行 make 編譯根文件系統。

采用全自動編譯方式時,默認會生成 buildroot/output/rockchip_rk3288_recovery 目錄,這是 recovery 的編譯輸出目錄。

子目錄說明:

  • build/ 包含所有的源文件,包括 Buildroot 所需主機工具和選擇的包,這個目錄包含所有 模塊源碼。
  • host/ 主機端編譯需要的工具包括交叉編譯工具。
  • images/ 包含壓縮好的根文件系統鏡像文件。
  • staging/ 這個目錄類似根文件系統的目錄結構,包含編譯生成的所有頭文件和庫,以及其他開發文件,不過他們沒有裁剪,比較龐大,不適用于目標文件系統。
  • target/ 包含完整的根文件系統,對比 staging/,它沒有開發文件,不包含頭文件,二進制文件也經過 strip 處理。
自定義 Buildroot

下文將介紹一些自定義 Buildroot 的方法。

模塊配置

默認編譯好的根文件系統不一定滿足我們的需求,我們可能需要增加一些第三方包,或者修改包的配置選項,Buildroot 支持圖形化方式去做選擇配置:

cd buildroot/output/rockchip_rk3288/ # 進入圖形化配置界面,選擇所需模塊,保存退出 make menuconfig # 保存到配置文件 'buildroot/configs/rockchip_rk3288_defconfig' make savedefconfig #編譯 Buildroot 根文件系統 make

需要了解的是:

  • 進行編譯時,Buildroot 根據配置,會自動從網絡獲取相關的軟件包,包括一些第三方庫,插件,實用工具等,放在dl/目錄。
  • 軟件包會解壓在 output/build/ 目錄下,然后進行編譯。
  • 如果要修改軟件包的源碼,可以通過打補丁的方式進行修改,補丁集中放在 package/ 目錄,Buildroot 會在解壓軟件包時為其打上相應的補丁。

busybox 配置修改

busybox 用于管理系統的命令工具,可按如下方式修改:

cd buildroot/output/rockchip_rk3288/ # 進入圖形化配置界面,選擇所需工具,退出保存 make busybox-menuconfig # 保存到配置文件 `board/rockchip/common/base/busybox.config` make busybox-update-config make

文件系統覆蓋

文件系統覆蓋是指在目標文件系統編譯完成后將文件覆蓋到文件系統目錄。通過這種方式,我們可以簡單的添加或修改一些文件:

  • 本例覆蓋目錄 buildroot/board/rockchip/rk3288/fs-overlay
  • 公有覆蓋目錄 buildroot/board/rockchip/common

例:buildroot/board/rockchip/rk3288/fs-overlay/etc/firmware 將覆蓋文件系統的 /etc/firmware 文件。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11456

    瀏覽量

    212742
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6096

    瀏覽量

    36135
  • Firefly
    +關注

    關注

    2

    文章

    541

    瀏覽量

    7394
  • Buildroot
    +關注

    關注

    1

    文章

    48

    瀏覽量

    1598
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    fireflyAIO-3288C主板安裝指導

    AIO-3288C 的標準套裝包含以下配件
    的頭像 發表于 11-05 15:58 ?1588次閱讀
    <b class='flag-5'>fireflyAIO-3288C</b><b class='flag-5'>主板</b>安裝指導

    Firefly-RK3288編譯 固件介紹

    編譯 Buildroot 固件 本章介紹 Buildroot 固件編譯使用。
    的頭像 發表于 11-27 08:53 ?3709次閱讀
    Firefly-RK<b class='flag-5'>3288</b><b class='flag-5'>編譯</b> <b class='flag-5'>固件</b>介紹

    fireflyAIO-3399C主板編譯Buildroot固件介紹

    編譯 Buildroot 固件   本章介紹 Buildroot 固件編譯使用。
    的頭像 發表于 12-13 10:39 ?2220次閱讀

    fireflyAIO-3288C主板IR 簡介

    AIO-3288C 開發板上可以接紅外收發傳感器 IR 實現遙控功能。
    的頭像 發表于 12-16 14:22 ?1825次閱讀
    <b class='flag-5'>fireflyAIO-3288C</b><b class='flag-5'>主板</b>IR <b class='flag-5'>簡介</b>

    fireflyAIO-3288C主板I2C簡介

    AIO-3288C 開發板上有 6 個片上 I2C 控制器。
    的頭像 發表于 12-16 14:23 ?1583次閱讀

    fireflyAIO-3288C定制 Android 固件介紹

    定制 Android 固件,有兩種方法: 改源碼,然后編譯生成固件。 在現有固件的基礎上進行裁剪。
    的頭像 發表于 12-16 14:28 ?1317次閱讀

    fireflyAIO-3288C主板編譯Android固件簡介

    編譯 Android 對機器的配置要求較高
    的頭像 發表于 12-16 14:53 ?1162次閱讀

    fireflyAIO-3288C主板Linux升級固件簡介

    本文以下內容僅適用于Linux系統,若需要升級Android系統,參考Android 升級固件
    的頭像 發表于 12-16 15:21 ?1633次閱讀
    <b class='flag-5'>fireflyAIO-3288C</b><b class='flag-5'>主板</b>Linux升級<b class='flag-5'>固件</b><b class='flag-5'>簡介</b>

    fireflyAIO-3288C主板Android升級固件簡介

    本文以下內容僅適用于android系統,若需要升級Linux系統,參考Linux 升級固件
    的頭像 發表于 12-16 15:40 ?2215次閱讀

    fireflyAIO-3288C主板升級統一固件簡介

    許多用戶在燒寫統一固件時,常常會出現“測試設備失敗”,“燒寫固件失敗”等情況,是因為沒有選擇對相應的工具,
    的頭像 發表于 12-16 15:12 ?2155次閱讀
    <b class='flag-5'>fireflyAIO-3288C</b><b class='flag-5'>主板</b>升級統一<b class='flag-5'>固件</b><b class='flag-5'>簡介</b>

    fireflyAIO-3288C主板啟動模式簡介

    AIO-3288C 有靈活的啟動方式。
    的頭像 發表于 12-16 15:43 ?1716次閱讀
    <b class='flag-5'>fireflyAIO-3288C</b><b class='flag-5'>主板</b>啟動模式<b class='flag-5'>簡介</b>

    fireflyCORE-PX30-JD4編譯Buildroot 固件簡介

    編譯 Buildroot 固件 本章介紹 Buildroot 固件編譯使用。
    的頭像 發表于 12-19 16:54 ?4727次閱讀

    fireflyAIO-3399J編譯Buildroot固件簡介

    編譯 Buildroot 固件 本章介紹 Buildroot 固件編譯使用。 準備工作 下載源
    的頭像 發表于 12-24 11:11 ?2529次閱讀

    fireflyAIO-3288J主板編譯Android固件簡介

    編譯 Android 固件 準備工作 編譯 Android 對機器的配置要求較高: 64 位 CPU 16GB 物理內存+交換內存 30GB 空閑的磁盤空間用于構建,源碼樹另外占用大約 25GB
    的頭像 發表于 12-26 14:44 ?1506次閱讀

    fireflyAIO-3288J簡介編譯Buildroot固件簡介

    編譯 Buildroot 固件 本章介紹 Buildroot 固件編譯使用。 準備
    的頭像 發表于 12-26 14:43 ?2416次閱讀