構(gòu)建Linux 4.x + Lubuntu操作系統(tǒng)方案
大?。?/span>0.5 MB 人氣: 2017-10-15 需要積分:1
兔子使用的交叉編譯主機環(huán)境為Xeon E5620服務(wù)器和Ubuntu Server 14.04 64-bit操作系統(tǒng),而交叉編譯需要的Linaro GCC為32-bit版本,因此需要安裝相關(guān)32-bit庫。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libc6:i386 libstdc++6:i386 libncurses5:i386 zlib1g:i386
下載交叉編譯工具,并將環(huán)境變量CC設(shè)置為編譯器的路徑和名稱前綴。
wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
tar xf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
export CC=`pwd`/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-
深入命令查看GCC版本來驗證交叉編譯工具的配置,如果報錯請檢查32-bit庫是否安裝正確。
${CC}gcc --version
編譯U-Boot
從U-Boot官方Git倉庫下載U-boot源碼。
git clone git://git.denx.de/u-boot.git
cd u-boot/
git checkout v2015.10 -b tmp
使用pcDuino 3 Nano的配置文件進行配置。
make ARCH=arm CROSS_COMPILE=${CC} distclean
make ARCH=arm CROSS_COMPILE=${CC} Linksprite_pcDuino3_Nano_defconfig
編譯U-Boot,這里采用4線程加速編譯。
make ARCH=arm CROSS_COMPILE=${CC} -j4
編譯完成后,在U-Boot目錄下會生成u-boot-sunxi-with-spl.bin文件,即為包含了A20初級Bootloader和U-Boot的鏡像。
編譯Linux 4.x Kernel
eewiki上使用了Robert Nelson編寫的編譯腳本來簡化Kernel編譯過程。下載編譯腳本,并根據(jù)需要選擇要編譯的Kernel版本。本例使用4.1.x版本。
git clone https://github.com/RobertCNelson/armv7-lpae-multiplatform
cd armv7-lpae-multiplatform/
選擇Linux 4.1.x Longterm版:
git checkout origin/v4.1.x -b tmp
選擇Linux 4.2.x Stable版:
git checkout origin/v4.2.x -b tmp
選擇Linux 4.3.x Prepatch版:
git checkout origin/v4.3.x -b tmp
運行build_kernel.sh腳本開始編譯。腳本會自動下載并配置交叉編譯工具,從Kernel官方Git倉庫下載源碼并開始編譯。
。/build_kernel.sh
期間會進入menuconfig界面。由于腳本是為多平臺設(shè)計的,用戶可以根據(jù)需要裁剪不需要的平臺和模塊支持。
編譯完成后,在deploy目錄下會生成zImage鏡像文件,modules和firmware壓縮包。
獲取RootFS
eewiki提供了兩種可供選擇的精簡版根文件系統(tǒng),分別為Ubuntu 14.04和Debian 8。本文選擇使用Ubuntu系統(tǒng)。下載并解壓rootfs:
wget -c https://rcn-ee.com/rootfs/eewiki/minfs/ubuntu-14.04.3-minimal-armhf-2015-09-07.tar.xz
tar xf ubuntu-14.04.3-minimal-armhf-2015-09-07.tar.xz
另附Dibian 8的下載地址:
https://rcn-ee.com/rootfs/eewiki/barefs/debian-8.2-bare-armhf-2015-09-07.tar.xz
制作啟動SD卡(MicroSD)
將TF卡通過USB讀卡器連接編譯主機,清除分區(qū)表sdX為對應(yīng)的SD卡設(shè)備,如果使用主機自帶的讀卡器,則可能識別為mmcblkX。
sudo dd if=/dev/zero of=/dev/sdX bs=1M count=10
通過gparted或fdisk等工具為SD卡重新分區(qū)并格式化SD卡,本例使用Sandisk 8GB Class10 MicroSD卡。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
下載地址
構(gòu)建Linux 4.x + Lubuntu操作系統(tǒng)方案下載
相關(guān)電子資料下載
- uboot的基本概念和啟動流程分析 49
- Windows11上Linux安裝教程 22
- 多路徑和iSCSI SAN存儲技術(shù)介紹 56
- 探討嵌入式系統(tǒng)的軟硬件框架 29
- 基于Ubuntu Server編譯YTM32 SDK工程 68
- 浩辰CAD Linux版 2024全球發(fā)布 274
- 如何使用pthread_barrier_xxx系列函數(shù)來實現(xiàn)多線程之間的同步? 29
- 馬斯克曾說特斯拉堅不可摧,卻敗在Kali Linux手下 559
- RK356X Ubuntu 推流USB攝像頭 265
- 為T507-H開發(fā)板配置Samba服務(wù),高效實現(xiàn)跨系統(tǒng)的文件共享 250