国产久操视频-国产久草视频-国产久热精品-国产久热香蕉在线观看-青青青青娱乐-青青青青在线成人视99

  • 正文
    • 一、安裝必要工具
    • 二、uboot配置
    • 三、編譯
  • 相關推薦
申請入駐 產(chǎn)業(yè)圖譜

飛凌嵌入式ElfBoard ELF 1板卡-初次編譯uboot

4小時前
110
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

uboot的編譯可分為三個步驟:安裝必要工具、配置、編譯

一、安裝必要工具

在進行開發(fā)之前,還需要一些其他的必要庫,我們使用以下命令逐一安裝:

elf@ubuntu:~$ sudo apt-get install build-essential

elf@ubuntu:~$ sudo apt-get install libncurses*

elf@ubuntu:~$ sudo apt-get install lzop

elf@ubuntu:~$ sudo apt-get install net-tools

二、uboot配置

uboot配置是針對不同的功能來選擇不同的配置項。uboot功能有很多,我們在開發(fā)過程中可能需要根據(jù)板卡的不同、平臺的不同或者項目需求差異對uboot功能支持進行調(diào)整,所以就可以通過uboot配置對uboot系統(tǒng)進行功能增加或裁剪。這些功能配置項存儲在configs/目錄下的配置文件(config_file)中,其中不同的配置文件中存儲著不同的功能配置組合,對應不同的板卡、平臺或項目工程。我們使用make <config_file>命令,就可根據(jù)config_file配置項在根目錄下生成或者更新.config文件,在編譯時,編譯器根據(jù)編譯規(guī)則按照.config中的配置進行編譯,具體uboot怎么配置,我們在下面章節(jié)有講解,本章節(jié)主要演示編譯流程,ELF?1開發(fā)板的配置文件為imx6ull_elf1_defconfig。

三、編譯

如果曾經(jīng)編譯過,在編譯之前可以使用make clean命令清除一下中間文件,也可以使用make distclean進行清除,make clean清除上次的make命令所產(chǎn)生的object文件(后綴為“.o”的文件)及可執(zhí)行文件,而make distclean會清除上次編譯生成的所有文件,包括uboot的配置文件.config,所以如果使用make distclean進行清除,就需要在重新編譯之前,再次執(zhí)行make imx6ull_elf1_emmc_defconfig生成.config。

這里我們第一次編譯,執(zhí)行如下命令生成配置文件.config:

elf@ubuntu:~/work/uboot-imx-2016.03-elf1$?make imx6ull_elf1_emmc_defconfig

直接使用make命令編譯即可:

. /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi

elf@ubuntu:~/work/uboot-imx-2016.03-elf1$?make -j4

其中-j4表示使用4個處理器核心(我們安裝虛擬機時,配置的處理器核心數(shù)就是4,所以這里最大也只能用4個核心)進行編譯,這樣編譯會快一些。

編譯完成之后在uboot根目錄生成u-boot.imx文件,即是我們最終要燒寫的uboot鏡像文件。

編譯步驟很簡單,我們還可以進一步簡化編譯操作,就是將這些編譯步驟放到一個shell腳本中,直接執(zhí)行腳本進行編譯。我們直接使用建立好的build.sh進行編譯即可。編譯之前,我們看一下腳本內(nèi)容:

其中第2行:CPU是一個變量,通過export CPU='grep -c processor /proc/cpuinfo'

獲取到當前機器的處理器核心數(shù)量賦值給變量CPU,在最后第6行make -j${CPUS}編譯時引用此變量。

第3行:是配置交叉編譯環(huán)境,但是注意,在腳本中配置的交叉編譯環(huán)境只能作用于此腳本運行期間。而在我們的終端界面命令行配置的交叉編譯環(huán)境則會一直作用在整個終端工作周期內(nèi),只要不關閉終端界面或者更換用戶此環(huán)境就有效。

第5行:配置開發(fā)板。

第6行:開始編譯。

執(zhí)行腳本進行編譯:

elf@ubuntu:~/work/uboot-imx-2016.03-elf1$?./build.sh

相關推薦

闽侯县| 长春市| 庆云县| 耒阳市| 许昌市| 宁远县| 洛宁县| 旬阳县| 连江县| 桃园市| 惠东县| 肇州县| 巩义市| 南皮县| 明溪县| 苍山县| 天台县| 高陵县| 博湖县| 嫩江县| 泽普县| 乐昌市| 高雄市| 富源县| 西畴县| 周宁县| 潼南县| 建昌县| 贞丰县| 新兴县| 林州市| 武宣县| 金塔县| 平山县| 永平县| 盐源县| 宣武区| 石景山区| 读书| 会泽县| 黔西县|