openKylin论坛

 找回密码

尝试把优麒麟22.04装到FT2000/4开发板上 [复制链接]

本帖最后由 凛葵依 于 2022-6-16 08:52 编辑

1.学习U-Boot中。代码获取地址:https://ftp.denx.de/pub/u-boot/

U-Boot的目录结构,取自源码中README
Directory Hierarchy:
====================

/arch                        Architecture-specific files
  /arc                        Files generic to ARC architecture
  /arm                        Files generic to ARM architecture
  /m68k                        Files generic to m68k architecture
  /microblaze                Files generic to microblaze architecture
  /mips                        Files generic to MIPS architecture
  /nds32                Files generic to NDS32 architecture
  /nios2                Files generic to Altera NIOS2 architecture
  /powerpc                Files generic to PowerPC architecture
  /riscv                Files generic to RISC-V architecture
  /sandbox                Files generic to HW-independent "sandbox"
  /sh                        Files generic to SH architecture
  /x86                        Files generic to x86 architecture
  /xtensa                Files generic to Xtensa architecture
/api                        Machine/arch-independent API for external apps
/board                        Board-dependent files
/boot                        Support for images and booting
/cmd                        U-Boot commands functions
/common                        Misc architecture-independent functions
/configs                Board default configuration files
/disk                        Code for disk drive partition handling
/doc                        Documentation (a mix of ReST and READMEs)
/drivers                Device drivers
/dts                        Makefile for building internal U-Boot fdt.
/env                        Environment support
/examples                Example code for standalone applications, etc.
/fs                        Filesystem code (cramfs, ext2, jffs2, etc.)
/include                Header Files
/lib                        Library routines generic to all architectures
/Licenses                Various license files
/net                        Networking code
/post                        Power On Self Test
/scripts                Various build scripts and Makefiles
/test                        Various unit test files
/tools                        Tools to build and sign FIT images, etc.
u-boot源码中存在大量开发板的对应代码,
这些代码都是经过验证可以正常工作的。
编译时只需要在u-boot代码根目录下,
make <开发板名>deconfig
就会输出提示
configuration written to .config
此时u-boot即被配置为开发板的的编译环境。

make all
经过编译后,即生成出二进制文件u-boot.bin和u-boot.dtb等文件。
u-boot源码中虽然已经提供了大量开发板的代码,
可对于较新的开发板依然是没有的,
但一般硬件厂家会提供他们已经调试好的u-boot源码,
或者直接给用户二进制文件。

但对于开发人员,
还是通过自行编译学习一下源码较好。
u-boot的代码参考了linux的代码思想,
可以直接在linux下编译,
开发人员只要具备linux基本操作技能,
能读懂makefile即可。
对于配置文件,
除了修改<开发板名>defconfig文件外,还可以用更友好的menuconfig图像界面进行配置。
但使用前要先安装依赖

sudo apt-get install build-essential
sudo apt-get install libncurses5-dev


源码根目录下make menuconfig即可调出如下界面,根据源码中README文件进行配置即可。



2.问题来了- -x86的机器上怎么编译arm64的u-boot
那就要使用交叉编译工具了,具体网上文档很多,配置也比较简单,
安个包,改个环境配置即可。
以下这2篇都有介绍
https://blog.csdn.net/leacock1991/article/details/113703897
https://blog.csdn.net/Darton_Zhang/article/details/78236366
楼主
发表于 2022-6-10 09:23:30
回复

使用道具 举报

尝试把优麒麟22.04装到FT2000/4开发板上 [复制链接]

我以为你是极客,原来是开发人员。
沙发
发表于 2022-6-15 12:29:32
回复

使用道具 举报

尝试把优麒麟22.04装到FT2000/4开发板上 [复制链接]

素少茄子 发表于 2022-6-15 12:29
我以为你是极客,原来是开发人员。

我是路过的~
板凳
 楼主| 发表于 2022-6-16 08:52:29
回复

使用道具 举报

尝试把优麒麟22.04装到FT2000/4开发板上 [复制链接]


原来是路过的开发人员,那更好了。
地板
发表于 2022-6-17 10:14:45
回复

使用道具 举报

openKylin

GMT+8, 2024-4-24 11:14 , Processed in 0.033000 second(s), 24 queries , Gzip On.

Copyright ©2022 openKylin. All Rights Reserved .

ICP No. 15002470-12 Tianjin

快速回复 返回顶部 返回列表