当前位置:首页 > 技术 > LINUX > 正文内容

荔枝派licheepi_nano编译uboot记录【转】

Watrt3年前 (2023-08-10)LINUX20470

板子使用我自己重新绘制的f1c100s,开源地址:复刻f1c100s/f1c200sLinux - 嘉立创EDA开源硬件平台

首先完全参照官网给的教程来前言 - Sipeed Wiki

注意选择相应的板子,安装合适的交叉编译器,我之前安装的交叉编译器是4.9版本的,编译过程报错,提示编译器版本过低

参考官网直接下载相应的交叉编译器,然后添加到环境变量中就行。如果arm-linux-gnueabi-gcc -v显示的交叉编译器版本没有改变,可以试试把老编译器的文件夹名字改了,然后把新版本的添加到老文件夹中(我也不知道是否有更好的方法)。

然后编译,报错error: command 'swig' failed: No such file or directory

 直接sudo apt install swig即可

然后又报错/usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here

 参考【编译错误】multiple definition of `yylloc`_小勇者的博客-CSDN博客

我是直接改的源码中的变量

然后又又又报错了Error: arch/arm/dts/.suniv-f1c100s-licheepi-nano.dtb.pre.tmp:59.1-10 syntax error
FATAL ERROR: Unable to parse input tree

 参考编译U-Boot DTB 时报错 syntax error; FATAL ERROR: Unable to parse input tree | 柚木鉉の空間 GloomyGhost Blog

把多余的反斜杠删掉即可

然后叕报错/usr/bin/env: “python2”: 没有那个文件或目录

 我是把原系统自带的2.7连接到python2,或者直接

sudo apt install python2-minimal

 然后叒双报错

参考 【问题解决】报错:ImportError: No module named _libfdt_JavonPeng的博客-CSDN博客

然后叕双报错scripts/dtc/pylibfdt/libfdt_wrap.c:168:11: fatal error: Python.h: 没有那个文件或目录
  168 | # include <Python.h>

 参考fatal error: Python.h: 没有那个文件或目录 解决方法_我的狗叫乐乐八岁了的博客-CSDN博客

我安装的

sudo apt install python2-dev

最后经历多波多折后终于编译成功了

 然后下载官方的工具

git clone -b f1c100s-spiflash https://gitee.com/sunnyczh1/sunxi-tools.git

https://gitee.com/sunnyczh1/sunxi-tools.git

编译报错fel_lib.c:26:10: fatal error: libusb.h: 没有那个文件或目录
   26 | #include <libusb.h>
      |          ^~~~~~~~~~
compilation terminated.
make: *** [Makefile:142:sunxi-fel] 错误 1

https://gitee.com/sunnyczh1/sunxi-tools.git

 参考官方安装

sudo apt-get install libusb-1.0-0-dev

 但依旧报错,

看前一句报错,安装pkg-config即可

sudo apt-get install pkg-config
打赏 支付宝打赏 微信打赏

相关文章

为自己打造Linux小系统

为自己打造Linux小系统

 一、前言Linux操作系统至1991.10.5号诞生以来,就源其开源性和自由性得到了很多技术大牛的青睐,每个Linux爱好者都为其贡献了自己的一份力,不管是在Linux内核还是开源软件等方面,都为我们后来人提供了一个良好的学习和研究环境。做为一个Linuxer,感谢各位前辈们为我们提供一个自由的空间,让我们也能够在学习的同时去研究Linux。本文主要通过裁剪现有Linux系统,打造一个属于自己的Linux小系统,让其能够装载网卡驱动,并配置IP地址,实现网络功能。二、原理启动流程介绍...

mkfs 参数

mkfs 参数

#mkfs.jffs2 -r rootfs -o fs.jffs2 -e 0x20000 --pad=0x500000 -s 0x800 –n -l即可生成 rootfs.jffs2Mkfs.jffs2各参数的意义如下:-r:指定要做成image的目录名。-o:指定输出image的文件名。-e:每一块要擦除的block size,默认是64KB.要注意,不同的flash, 其block size会不一样,三星的K9F2G08U0A的block size为0x20000(从其datasheet里可...

 Debian 9.9 (stretch) 文件系统制作

Debian 9.9 (stretch) 文件系统制作

0. 准备工作:sudo apt install qemu-user-static -y sudo apt install debootstrap -y mkdir rootfs1. debootstrapdebootstrap --foreign --verbose --arch=armhf  stretch rootfs http...

[转]《保姆级教程》全志F1C100S/F1C200S spi-flash 启动全流程适配烧录及踩坑指南

[转]《保姆级教程》全志F1C100S/F1C200S spi-flash 启动全流程适配烧录及踩坑指南

转自哇酷网=丨晋丨通过参考荔枝派nano官方和论坛大佬的帖子,总结了烧录 spi-flash 启动的方法。通过搜寻资料,把其中有错误或者做了多余的操作的步骤做了修正,以免大家再次踩坑,耗费青春。以下包括 uboot、kernel、buildroot 和 烧录的详细步骤和需要注意的问题,尽量精简方法,以期容易上手和理解。各种配置项也做了详细注释,要知其然,也知其所以然。最理想的状态应该是是:有的坑,踩的人多了,也便没有了坑。论坛不太好排版,有需要的也可以去我的博客看:P:全志F1C100S/F1C...

f1c100s编译启动所需的uboot,kernel,rootfs

f1c100s编译启动所需的uboot,kernel,rootfs

 https://github.com/Icenowy/linux.git 有f1c100s-480272lcd-test和f1c100s分支, 然后自己手动修复一个 USB 问题,驱动就比较全了https://github.com/Lichee-Pi/linux.git 有nano-4.14-exp和nano-5.2-flash分支,用哪个合适个人画了块没有连接任何其他模块的F1C100S开发板,没有链接任何外设,本文是编译所有启动所需的三大件。(只要编...

荔枝派Nano的linux5.2版本主线下载及编译(支持USB设备与主机模式)

荔枝派Nano的linux5.2版本主线下载及编译(支持USB设备与主机模式)

安装必须的库:sudo apt-get install gcc make cmake rsync wget unzip build-essential git bc swig libncurses-dev libpython3-dev libssl-dev python3-distutils android-tools-mkbo...

从Ubuntu-base构建ubuntu rootfs系统

从Ubuntu-base构建ubuntu rootfs系统

1.介绍ubuntu-base 是Ubuntu官方构建的ubuntu最小文件系统,包含debain软件包管理器,基础包大小通常只有几十兆,其背后有整个ubuntu软件源支持,ubuntu软件一般稳定性比较好,基于ubuntu-base按需安装Linux软件,深度可定制…,常用于嵌入式rootfs构建。嵌入式常见的几种文件系统构建方法:busybox、yocto、builroot,我觉得它们都不如Ubuntu方便,强大的包管系统,有强大的社区支持,可以直接apt-get install来安装新软件...

Ubuntu+Openbox_还原_安装_脚本

Ubuntu+Openbox_还原_安装_脚本

第一步:安装UBUNTU基本系统安装基本的命令行系统,选英文。装好重启后马上把系统tar备份(只有186M),下次重装1分钟就可以解压第二步:执行脚本#!/bin/bash #联网----------->卸载DHCP、配置拨号、解决掉线、网络接口 sudo apt-get -y purge isc-dhcp-client && sudo pppoeconf && s...