91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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

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

3天內不再提示

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

firefly ? 來源:firefly ? 作者:firefly ? 2019-12-13 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編譯 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 rk3399/rk3399_linux_release.xml # 同步源碼 。./repo/repo sync -c

方法二

下載Linux_SDK.7z

# 把壓縮包放在上一步下載repo工具的目錄下 7z x Linux_SDK.7z # 更新代碼 repo sync -c

配置編譯環境

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

sudo apt-get install repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot-tools device-tree-compiler \ gcc-aarch64-linux-gnu mtools parted libudev-dev libusb-1.0-0-dev python-linaro-image-tools \ linaro-image-tools autoconf autotools-dev libsigsegv2 m4 intltool libdrm-dev curl sed make \ binutils build-essential gcc g++ bash patch gzip bzip2 perl tar cpio python unzip rsync file bc wget \ libncurses5 libqt4-dev libglib2.0-dev libgtk2.0-dev libglade2-dev cvs git mercurial rsync openssh-client \ subversion asciidoc w3m dblatex graphviz python-matplotlib libc6:i386 libssl-dev texinfo \ liblz4-tool genext2fs lib32stdc++6

編譯SDK

配置編譯文件

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

。/build.sh aio-3399c.mk # 文件路徑在 `device/rockchip/rk3399/aio-3399c.mk`

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

# Buildroot config export RK_CFG_BUILDROOT=rockchip_rk3399 # Buildroot 根文件系統配置文件 # 文件路徑在 `buildroot/configs/rockchip_rk3399_defconfig`

# Recovery config export RK_CFG_RECOVERY=rockchip_rk3399_recovery # recovery 模式下根文件系統配置文件(可省略) # 文件路徑在 `buildroot/configs/rockchip_rk3399_recovery_defconfig`

# rootfs image path export RK_ROOTFS_IMG=buildroot/output/$RK_CFG_BUILDROOT/images/rootfs.$RK_ROOTFS_TYPE # Buildroot 根文件系統鏡像路徑 # 本例中,文件路徑在 `buildroot/output/rockchip_rk3399/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_rk3399 目錄,后續可以在該目錄執行 make 編譯根文件系統。

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

子目錄說明:

build/ 包含所有的源文件,包括 Buildroot 所需主機工具和選擇的包,這個目錄包含所有 模塊源碼。

host/ 主機端編譯需要的工具包括交叉編譯工具。

images/ 包含壓縮好的根文件系統鏡像文件。

staging/ 這個目錄類似根文件系統的目錄結構,包含編譯生成的所有頭文件和庫,以及其他開發文件,不過他們沒有裁剪,比較龐大,不適用于目標文件系統。

target/ 包含完整的根文件系統,對比 staging/,它沒有開發文件,不包含頭文件,二進制文件也經過 strip 處理。

自定義 Buildroot

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

模塊配置

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

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

需要了解的是:

進行編譯時,Buildroot 根據配置,會自動從網絡獲取相關的軟件包,包括一些第三方庫,插件,實用工具等,放在dl/目錄。

軟件包會解壓在 output/build/ 目錄下,然后進行編譯。

如果要修改軟件包的源碼,可以通過打補丁的方式進行修改,補丁集中放在 package/ 目錄,Buildroot 會在解壓軟件包時為其打上相應的補丁。

busybox 配置修改

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

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

文件系統覆蓋

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

本例覆蓋目錄 buildroot/board/rockchip/rk3399/fs-overlay-64

公有覆蓋目錄 buildroot/board/rockchip/common

例:buildroot/board/rockchip/rk3399/fs-overlay-64/etc/input-event-daemon.conf 將覆蓋文件系統的 /etc/input-event-daemon.conf 文件。

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

    關注

    87

    文章

    11511

    瀏覽量

    213865
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6102

    瀏覽量

    36313
  • Firefly
    +關注

    關注

    2

    文章

    542

    瀏覽量

    8415
  • Buildroot
    +關注

    關注

    1

    文章

    50

    瀏覽量

    1693
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Firefly-RK3399 Buildroot 固件介紹

    編譯 Buildroot 固件 本章介紹 Buildroot 固件
    的頭像 發表于 11-23 10:58 ?5645次閱讀
    Firefly-RK<b class='flag-5'>3399</b> <b class='flag-5'>Buildroot</b> <b class='flag-5'>固件</b><b class='flag-5'>介紹</b>

    Firefly-RK3288編譯 固件介紹

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

    fireflyAIO-3399C主板FAQs方案

    AIO-3399C默認出廠固件是支持LVDS+HDMI 1080P的雙屏顯示,HDMI分辨率最高只能到1080P。
    的頭像 發表于 12-04 10:23 ?1442次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>FAQs方案

    fireflyAIO-3399C主板散熱介紹

    散熱套件 鋁制散熱片 產品參數 適配:AIO-3399C 尺寸:43mm (L)* 39.5mm(W)*11mm(H)
    的頭像 發表于 12-09 15:56 ?1462次閱讀

    fireflyAIO-3399C主板屏幕模組介紹

    屏幕模組 7.85寸MIPI液晶屏模組 注意:默認的AIO-3399C主板不帶mipi_dsi接口,如需要此功能需修改硬件。 詳細請參考LCD驅動章節
    的頭像 發表于 12-09 16:08 ?2228次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>屏幕模組<b class='flag-5'>介紹</b>

    fireflyAIO-3399C主板PWM介紹

    AIO-3399C開發板上引出有 3 路 PWM 輸出,
    的頭像 發表于 12-09 16:20 ?1779次閱讀

    fireflyAIO-3399C主板LED介紹

    LED 使用 AIO-3399C 開發板上有 2 個 LED 燈
    的頭像 發表于 12-09 16:25 ?2110次閱讀
    <b class='flag-5'>fireflyAIO-3399C</b><b class='flag-5'>主板</b>LED<b class='flag-5'>介紹</b>

    fireflyAIO-3399C主板ADC介紹

    AIO-3399C 開發板上的 AD 接口有兩種,分別為:溫度傳感器 (Temperature Sensor)、逐次逼近ADC (Successive Approximation Register)。
    的頭像 發表于 12-13 10:14 ?1739次閱讀

    fireflyAIO-3399C編譯Industry固件簡介

    Android7.1 的SDK分為 tvbox版本以及industry版本(主要維護),用戶可根據需求,自行下載所需的SDK來進行編譯和開發,兩版SDK均兼容AIO-3399C與AIO-3399C(AI)板型。
    的頭像 發表于 12-13 10:36 ?1962次閱讀

    fireflyAIO-3399C主板編譯 Android7.1 固件簡介

    Android7.1 的SDK分為 tvbox版本以及industry版本(主要維護),用戶可根據需求,自行下載所需的SDK來進行編譯和開發,兩版SDK均兼容AIO-3399C與AIO-3399C(AI)板型。
    的頭像 發表于 12-13 10:29 ?1982次閱讀

    fireflyAIO-3399C主板升級固件介紹

    本文介紹了如何將主機上的固件文件,通過Type-C數據線,燒錄到開發板的閃存中。升級時,需要根據主機操作系統和固件類型來選擇合適的升級方式。
    的頭像 發表于 12-13 10:46 ?2720次閱讀

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

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

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

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

    fireflyAIO-3399J編譯Buildroot固件簡介

    編譯 Buildroot 固件 本章介紹 Buildroot 固件
    的頭像 發表于 12-24 11:11 ?2606次閱讀

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

    編譯 Buildroot 固件 本章介紹 Buildroot 固件
    的頭像 發表于 12-26 14:43 ?2483次閱讀
    主站蜘蛛池模板: 亚洲成人7777 | 香蕉爱爱视频 | 嗯好舒服好爽好快好大 | 又黄又湿又爽 | 色se01短视频永久免费 | 天天欲色 | 么公的好大好硬好深好爽视频 | a看片| 最新天堂网 | 最新亚洲人成网站在线影院 | 国产女人视频免费观看 | riav久久中文一区二区 | 成人a大片高清在线观看 | 在线观看日本免费视频大片一区 | 免费无遮挡很爽很污很黄 | 日韩a视频 | 狠狠操天天操夜夜操 | 午夜性a一级毛片 | 三级网站国产 | 黄色免费的视频 | 视频精品一区二区三区 | 91在线免费看 | 男女视频在线播放 | 一级黄色毛片播放 | 黄 色 片 在 线 看 | 狠狠干人人干 | 国产四虎 | 黄色日本视频网站 | 男女在线免费视频 | 色一情一乱一乱91av | 四虎影院在线视频 | 69re在线观看 | 欧美一区二区视频在线观看 | 日本特黄在线观看免费 | 97天天干 | 黄色成人免费观看 | 高h文男主又粗又狠 | 久久国产精品免费看 | 黄色美女网站免费 | 日日做夜夜做 | 亚洲第一狼人社区 |