| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> Cherrypi-F1C200S从零跑linux -> 正文阅读 |
|
[系统运维]Cherrypi-F1C200S从零跑linux |
一、前言 ????????入手了一块全志F1C200S芯片的板子,花了两天时间对这块板子移植上了linux,记录一下过程。 二、编译环境搭建 1、下载交叉编译器 ????????链接:https://pan.baidu.com/s/15UlP01DP1E99I-8EjnHDxA? ????????创建安装目录 ????????sudo mkdir /urs/local/arm ????????sudo chmod 777 /urs/local/arm ????????将编译器传到arm目录,并解压 ????????sudo cp gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz /usr/local/arm/ -f ? ? ? ? sudo tar -xvf?gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz ? ? ? ? 修改环境变量 ? ? ? ? sudo vi /etc/profile ? ? ? ? 在最后一行输入 ????????export PATH=$PATH:/usr/local/arm/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi/bin ? ? ? ? 保存退出,输入以下命令使环境变量生效 ? ? ? ? source? /etc/profile 3、验证 ????????输入gcc-linux-gnueabi-gcc -v,输出如下即为成功 ?三、u-boot 1、准备TF卡 ? ? ? ? 由于我买的板子没有spi-flash,所以系统只能用TF卡启动。 ? ? ? ? 在windows下格式化TF卡,然后挂载到ubuntu上。ubuntu上打开GParted软件,该软件可以在ubuntu自带的软件商店下载,用GParted给TF卡分两个区 ? ? ? ? 选择TF卡。新建BOOT分区,主要用来烧录uboot和存放镜像设备锁,格式如下 ? ? ? ? 再新建一个分区,用于存放rootfs? ????????然后确定 ,TF卡准备完成 2、克隆uboot????? ? ? ? ? 新建个目录用于存放uboot、linux和rootfs ? ? ? ? sudo mkdir cherrpi,cd进入该目录? ? ????????git?clone?https://github.com/Lichee-Pi/u-boot.git?-b?nano-v2018.01 3、配置编译uboot ? ? ? ? cd uboot ? ? ? ? vi Makefile?? ????????在Makefile中的248行和249行分辨添加ARCH=arm、CROSS_COMPILE=arm-linux-gnueabi- ? ? ? ? make distclean? ? ?#对uboot清理 ???????make licheepi_nono_defconfig? ? #对uboot进行配置 ? ? ? ?由于我用的这块板子串口用的是uart1,所以要修改uboot串口为uart1,主要参考 (20条消息) 全志F1C100S/F1C200S学习笔记(9)——主线linux更改默认终端串口为uart1_丨晋丨-CSDN博客 ? ? ? ? 按照教程设置好串口,即可编译 ? ? ? ? make -j12 ? ? ? ? 烧写 ????????sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdb bs=1024 seek=8 四、linux 1、克隆linux ????????git?clone?https://github.com/Lichee-Pi/linux.git?--depth=1?-b?nano-4.14-exp 2、编译linux ? ? ? ? cd linux-nano-4.14-exp ? ? ? ? 修改Makefile,sudo vi Makefile,添加下面两行代 ???????? ? ? ? ? ? 获取官方配置文件放置arch/arm/configs/ 并修改名字mv linux-cheepi_nano_defconfig cheepi_nano_defconfig ????????wget?http://nano.lichee.pro/_static/step_by_step/licheepi_nano_linux.config mv licheepi_nano_defconfig ? ? ? ? 配置make licheepi_nano_defconfig 3、修改linux串口为uart1 ????????(20条消息) 全志F1C100S/F1C200S学习笔记(9)——主线linux更改默认终端串口为uart1_丨晋丨-CSDN博客 ?4、编译linux ????????make -j12 5、启动linux ????????将编译好的zImage和suniv-f1c100s-licheepi-nano.dtb文件放置到TF卡的BOOT分区 ????????sudo cp arch/arm/boot/zImage /media/BOOT && cp arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dtb /media/BOOT ????????板子插入TF卡,上电进图u-boot终端 ???????? ?6、修改环境变量 ???????? ????????setenv bootcmd 'fatload mmc 0:1 80C00000 suniv-f1c100s-licheepi-nano.dtb;fatload mmc 0:1 80008000 zImage;bootz 80008000 - 80C00000;' #读取设备树和镜像文件 ????????setenv bootargs 'console=tty0 console=ttyS1,115200' #修改串口输出 ????????saveenv #保存环境变量 ????????boot #重启板子 ????????内核加载成功,由于没有加载根文件系统,所以卡住了 ?五、根文件系统 1、buildroot准备 ????????wget https://buildroot.org/downloads/buildroot-2017.08.tar.gz ????????tar xvf buildroot-2017.08.tar.gz ????????cd buildroot-2017.08/ 2、配置 ????????make menuconfig ? ? ? ? 串口配置为uart1 ? ? ? ? 芯片配置 ????????? ? ? ? ? 其他保持不变,也可以根据需求进行配置 3、编译 ? ? ? ? make? #buildroot没有多线程? ????????漫长的等待。。。 ????????cd output/image ???????sudo tar -xvf rootfs.tar -C /media/sunny/rootfs #解压根目录到TF卡的rootfs分区 4、测试 ????????把TF卡插入板子,上电进去u-boot,修改bootargs环境变量加载根目录 ????????setenv bootargs ‘console=tty0 console=ttyS1,115200 panic=5 rootwait root=/dev/mmcblk0p2 rw’ ????????saveenv #保存环境变量 ? ? ? ? boot? ? ? ?#板子复位 大功告成 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 7:25:13- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |