日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

imx6 板卡移植官方yocto版本(2_定制系统)

發(fā)布時間:2025/3/21 windows 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 imx6 板卡移植官方yocto版本(2_定制系统) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
  • 上一節(jié)中已經(jīng)講述了如何去構(gòu)建編譯環(huán)境,這一節(jié)講一下如何定制專屬于自己板卡的系統(tǒng)。1.配置linux內(nèi)核官方repo下來的yocto項目里配置了多個內(nèi)核可選,我們可以在yocto目錄下/source/meta-fsl-arm/recipes-kernel/linux中找到,配置的三個內(nèi)核如下:linux-fslc_3.8.bb-->kernelmainline(fromkernel.org)linux-imx_2.6.35.3.bb-->kernelfromFSL,
  • 上一節(jié)中已經(jīng)講述了如何去構(gòu)建編譯環(huán)境,這一節(jié)講一下如何定制專屬于自己板卡的系統(tǒng)。


    1. 配置linux內(nèi)核


    官方repo下來的yocto項目里配置了多個內(nèi)核可選,我們可以在yocto目錄下/source/meta-fsl-arm/recipes-kernel/linux 中找到,配置的三個內(nèi)核如下:



    linux-fslc_3.8.bb --> kernel mainline (from kernel.org)



    linux-imx_2.6.35.3.bb --> kernel from FSL, for imx5x and imx28



    linux-imx_3.0.35.bb--> kernel from FSL for imx6


    我的板子是imx6的,因此我選的是linux-imx6,如果你用的是高版本的yocto,那內(nèi)核可能跟我的不一樣,不過配置沒有什么大的變化。?

    內(nèi)核的arch/arm/configs目錄下有一些默認的配置可選,yocto也有自己的配置可用,現(xiàn)在講一下自定義配置內(nèi)核。


    //首先創(chuàng)建一個配置xxxx_defconfig



    $ cp xxx_defconfigmeta-fsl-arm/recipes-kernel/linux/linux-imx-3.0.35/mx6//這里要對應(yīng)你yocto版本的目錄



    $ bitbake -c cleansstate linux-imx
    //清理一下之前編譯的狀態(tài)



    $ bitbake linux-imx
    //編譯內(nèi)核



    $ bitbake fsl-image-gui //編譯整個工程,不是必須的




    2. 使用menuconfig配置具體項





    $ bitbake -c menuconfig linux-imx



    $ cp tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.0.35-r33.10/git/.config ../sources/meta-fsl-arm/recipes-kernel/linux/linux-imx-
    3.0.35/mx6/defconfig



    $ bitbake -c cleansstate linux-imx



    $ bitbake fsl-image-gui



    3. 如果想用linux主線版本的最新內(nèi)核,可以通過改配置conf/local.conf,不一定支持,而且有危險(主要是BUG沒人測試)



    PREFERRED_PROVIDER_virtual/kernel = "linux-fslc"




    4. 用yocto不太適合開發(fā)(主要是腳本啥的太智能,找半天麻煩),此時我們編譯的工具鏈就有作用了。當執(zhí)行完bitbake
    meta-toolchain后



    工具鏈就生成腳本了,看下面:



    $ ls tmp/deploy/sdk/poky-eglibc-x86_64-arm-toolchain-1.4.1.sh



    tmp/deploy/sdk/poky-eglibc-x86_64-arm-toolchain-1.4.1.sh //前提你編譯沒出錯,版本不一定跟我的一樣


    現(xiàn)在安裝一下:



    $ source poky-eglibc-x86_64-arm-toolchain-1.4.1.sh



    [sudo] password for daiane:



    Enter target directory for SDK (default: /opt/poky/1.4.1):



    You are about to install the SDK to "/opt/poky/1.4.1". Proceed[Y/n]?y



    Extracting SDK...done



    Setting it up...done



    SDK has been successfully set up and is ready to be used.



    測試一下,隨便寫一個helloworld程序:





    $ arm-poky-linux-gnueabi-gcc helloworld.c -o hello



    $ ls



    hello helloworld.c



    $ ./hello



    -bash: ./hello: cannot execute binary file
    //肯定報錯



    $ file hello



    hello: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped


    5. 用導(dǎo)出的工具鏈編譯導(dǎo)出的內(nèi)核?




    $ source /opt/poky/1.4.1/environment-setup-armv7a-vfp-neon-poky-linux-gnueabi
    //導(dǎo)出環(huán)境變量,也可以寫入/etc/bash.bashrc文件



    $ cd linux-imx



    $ export ARCH=arm



    $ export CROSS_COMPILE=$TARGET_PREFIX



    $ unset LDFLAGS



    $ make imx6_defconfig



    $ make uImage?
    //也可以使用zImage,路徑在/arch/arm/boot目錄下



    6. 編譯busybox,制作文件系統(tǒng)





    $ source /opt/poky/1.4.1/environment-setup-armv7a-vfp-neon-poky-linux-gnueabi
    //導(dǎo)出環(huán)境變量,也可以寫入/etc/bash.bashrc文件


    $ cd busybox1.2?
    //busybox我是從官網(wǎng)下載的,版本自己決定?


    $ export ARCH=arm



    $ export CROSS_COMPILE=$TARGET_PREFIX



    $ unset LDFLAGS


    $ make menuconfig?
    //定義自己需要的命令,不懂的請參考busybox配置?
    $ make&;&;make install?
    7. 將制作好的內(nèi)核與文件系統(tǒng)通過網(wǎng)口或者U盤測試一下是否可用。
以上是imx6 板卡移植官方y(tǒng)octo版本(2_定制系統(tǒng))的內(nèi)容,更多?板卡?移植?定制?版本?官方?系統(tǒng)?Yocto?IMX6?的內(nèi)容,請您使用右上方搜索功能獲取相關(guān)信息。

總結(jié)

以上是生活随笔為你收集整理的imx6 板卡移植官方yocto版本(2_定制系统)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。