【linux学习笔记--第一篇】基于nanopim2a的环境搭建,uboot编译及下载

          接触一个星期,搭建了虚拟机,双系统,移动硬盘ubuntu , 总结下来, 移动硬盘的系统最方便,硬盘可以分为2个分区,一个装系统, 一个放文件(windows也可以识别),感觉还是挺爽的。

          以下是这几天折腾u-boot的一些操作,主要为编译环境的搭建,uboot编译,及烧写。 刚接,太虐心了。

1、搭建ubuntu系统, 我用的是移动双系统, 版本为18.04TLS

2、更新源 

sudo apt-get update

3、更新软件,

sudo apt-get upgrade

4、安装gcc 

sudo apt-get install gcc

5、安装git

sudo apt-get install git

6、安装依赖库 

 sudo apt install libssl-dev

7、安装arm 交叉编译环境 ,使用官方提供的, git:  

git clone https://github.com/friendlyarm/prebuilts.git

8、解压工具

sudo mkdir -p /opt/nanopim2a/tools  
sudo tar xf prebuilts/gcc-x64/arm-cortexa9-linux-gnueabihf-4.9.3.tar.xz -C /opt/nanopim2a/tools/

9、添加环境变量

sudo gedit /etc/profile

在文件末尾添加

export PATH=/opt/nanopim2a/tools/4.9.3/bin:$PATH
export GCC_COLORS=auto

保存后运行

source /etc/profile

输入:  arm-linux-gcc -v ,有如下输出证明交叉编译环境配置成功

目标:arm-cortexa9-linux-gnueabihf
配置为:/work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c,c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long
线程模型:posix
gcc 版本 4.9.3 (ctng-1.21.0-229g-FA)


 

10、下载sd_fuse

git clone https://github.com/friendlyarm/sd-fuse_nanopi2.git

11、下载uboot    及编译

git clone https://github.com/friendlyarm/u-boot.git  
cd u-boot  
git checkout nanopi2-v2016.01  
make s5p4418_nanopi2_defconfig 
make CROSS_COMPILE=arm-linux-

 


12、拷贝bootloader.img到 sd_fuse的prebuilt目录下

cp ./u-boot/bootloader.img ./sd-fuse_nanopi2/prebuilt/

13、SD卡插入设备, 输入 ls /dev/sd* , 查看sd卡挂在的符号

14、使用sd_fuse烧写(我的SD卡挂在为sdc)  

./fusing.sh /dev/sdc

stone@cq:~/nanopim2/sd-fuse_nanopi2$ ./fusing.sh /dev/sdc
Re-running script under sudo...
---------------------------------
./prebuilt/bl1-mmcboot.bin fusing
dd if=./prebuilt/bl1-mmcboot.bin of=/dev/sdc bs=512 seek=1
记录了41+1 的读入
记录了41+1 的写出
21208 bytes (21 kB, 21 KiB) copied, 0.0307948 s, 689 kB/s
---------------------------------
./prebuilt/loader-mmc.img fusing
dd if=./prebuilt/loader-mmc.img of=/dev/sdc bs=512 seek=129
记录了53+1 的读入
记录了53+1 的写出
27528 bytes (28 kB, 27 KiB) copied, 0.0173851 s, 1.6 MB/s
---------------------------------
./prebuilt/bl_mon.img fusing
dd if=./prebuilt/bl_mon.img of=/dev/sdc bs=512 seek=513
记录了32+0 的读入
记录了32+0 的写出
16384 bytes (16 kB, 16 KiB) copied, 0.0132997 s, 1.2 MB/s
---------------------------------
./prebuilt/bootloader.img fusing
dd if=./prebuilt/bootloader.img of=/dev/sdc bs=512 seek=3841
记录了898+1 的读入
记录了898+1 的写出
459936 bytes (460 kB, 449 KiB) copied, 0.477725 s, 963 kB/s
---------------------------------
Bootloader image is fused successfully.

至此搭建,编译, 烧写结束

猜你喜欢

转载自blog.csdn.net/kyzb002/article/details/81215996