测试环境
虚拟机:Ubuntu18.04 LTS
pmon源码:http://ftp.loongnix.cn/embedd/ls2k/pmon-loongson3.tar.gz
pmon交叉工具链:http://ftp.loongnix.cn/embedd/ls3a/toolchain/gcc-4.4-gnu.tar.gz
qemu工具:https://gitee.com/loongsonlab/qemu
pmon介绍
PMON是一个兼有BIOS和boot loader部分功能的开放源码软件,多用于嵌入式系统。
与BIOS相比功能不足,与常见的bootloader 相比,功能要丰富的多。基于龙芯的系统采用 pmon 作为类 BIOS 兼 bootloader,并做了很多完善工作。
其有如下主要特点:
支持ext2 fat32 ram 文件系统
支持网络引导(tftp),磁盘引导,flash 引导
内建调试功能(强大,调试内核举重若轻)
USB 2.0 Mass Storage 支持
支持MIPS、ARM、PowerPC 平台
BSD Licensed
PMON编译
编译过程
将交叉编译工具解压到根目录
ubuntu@ubuntu:~/Desktop/pmon$ sudo tar zxvf gcc-4.4-gnu.tar.gz -C /
[sudo] password for ubuntu:解压后文件如下图所示

2. 配置cfg文件
cd zloader.ls2k
make cfg tgt=rom CROSS_COMPILE=/opt/gcc-4.4-gnu/bin/mips64el-linux- DEBUG=-g编译源码
make all tgt=rom CROSS_COMPILE=/opt/gcc-4.4-gnu/bin/mips64el-linux- DEBUG=-g生成dtb文件
make dtb tgt=rom CROSS_COMPILE=/opt/gcc-4.4-gnu/bin/mips64el-linux- DEBUG=-g编译过程中遇到的问题

解决方法:
root@ubuntu:/home/ubuntu/Desktop/pmon/pmon-loongson3/zloader.ls2k# cd ../tools/pmoncfg/
root@ubuntu:/home/ubuntu/Desktop/pmon/pmon-loongson3/tools/pmoncfg# make pmoncfg
root@ubuntu:/home/ubuntu/Desktop/pmon/pmon-loongson3/tools/pmoncfg# cp pmoncfg /usr/bin/
解决方法:
root@ubuntu:/home/ubuntu/Desktop/pmon/pmon-loongson3/zloader.ls2k# apt-get install xutils-dev
解决方法:
root@ubuntu:/home/ubuntu/Desktop/pmon/pmon-loongson3/zloader.ls2k# apt-get install python龙芯qemu工具编译
安装依赖
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/buid# apt-get install zlib*
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/buid# apt-get install libglib2.0-dev
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/buid# apt-get install libpixman-1-devroot@ubuntu:/home/ubuntu/Desktop/pmon/# cd qemu
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/# mkdir build
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/buid# ../configure --target-list=mipsel-softmmu,mips64el-softmmu --disable-werror
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/buid# make使用qemu加载pmon
root@ubuntu:/home/ubuntu/Desktop/pmon/qemu/buid# ./mips64el-softmmu/qemu-system-mips64el -M ls2k -m 256 -smp 1 -serial stdio -bios ../../pmon-loongson3/zloader.ls2k/gzrom.bin启动界面如下图所示:


本文介绍了如何在Ubuntu18.04 LTS环境下编译龙芯PMON,包括获取源码、交叉工具链,以及解决编译中遇到的问题。此外,还详细讲解了龙芯qemu工具的依赖安装和使用,展示了成功加载pmon后的启动界面。
838

被折叠的 条评论
为什么被折叠?



