LoongArch平台PMON交叉编译环境搭建

版本描述

源码名称:pmon-loongarch

编译工具:现支持GCC8.3

PMON基线版本:基于 PMON 2000

PMON版本号:PMON 5.0.x-Release

搭建X86交叉编译环境

编译器:loongarch64-linux-gnu-2021-04-22-vector.tgz

开发机系统:Ubuntu 16.04为例进行操作步骤。

1、安装编译需要的库

# apt-get install acpica-tools bison flex libfl-dev xutils-dev device-tree-compiler libbison-dev

2、解压编译器到/opt目录下

# tar xf loongarch64-linux-gnu-2021-04-22-vector.tar.gz -C /opt/

设置环境变量

设置环境变量的方法有两种:临时设置和永久设置。

临时设置的方法

1、创建一个脚本文件env.sh

文件内容如下:

#!/bin/bash
export PATH=/opt/loongarch64-linux-gnu-2021-04-22/bin:$PATH
export LD_LIBRARY_PATH=/opt/loongarch64-linux-gnu-2021-04-22/lib:/opt/loongarch64-linux-gnu-2021-04-22/loongarch64-linux-gnu/lib:$LD_LIBRARY_PATH
export CROSS_COMPILE=loongarch64-linux-gnu-
export ARCH=loongarch

2、给env.sh添加可执行权限

#chmod  +x  env.sh

3、执行脚本,生效环境变量

#source env.sh

4、查看是否生效

命令行下输入loongarch然后按Tab键看是否出现loongarch64-linux-gnu相关信息。如出现如下信息,则说明交叉编译器的环境配置成功。接下来只需要在当前终端命令行进行编译UEFI源码即可。

# loongarch
loongarch64-linux-gnu-cpp         loongarch64-linux-gnu-gcc-nm      loongarch64-linux-gnu-gprof       loongarch64-linux-gnu-ranlib
loongarch64-linux-gnu-addr2line   loongarch64-linux-gnu-elfedit     loongarch64-linux-gnu-gcc-ranlib  loongarch64-linux-gnu-ld          loongarch64-linux-gnu-readelf
loongarch64-linux-gnu-ar          loongarch64-linux-gnu-g++         loongarch64-linux-gnu-gcov        loongarch64-linux-gnu-ld.bfd      loongarch64-linux-gnu-size
loongarch64-linux-gnu-as          loongarch64-linux-gnu-gcc         loongarch64-linux-gnu-gcov-dump   loongarch64-linux-gnu-nm          loongarch64-linux-gnu-strings
loongarch64-linux-gnu-c++         loongarch64-linux-gnu-gcc-8.3.0   loongarch64-linux-gnu-gcov-tool   loongarch64-linux-gnu-objcopy     loongarch64-linux-gnu-strip
loongarch64-linux-gnu-c++filt     loongarch64-linux-gnu-gcc-ar      loongarch64-linux-gnu-gfortran    loongarch64-linux-gnu-objdump     loongarch64-mips-gcc

永久设置方法

临时设置环境变量仅在当前终端窗口的命令行有效,更换终端窗口则需要重新配置。永久配置就是将环境变量写入一些系统启动过程中自动生效的配置文件中,如.bashrc配置文件。这样就不用每次编译之前去执行env.sh脚本了。

1、开打文件,将设置内容写入文件.bashrc文件的末尾

#vim ~/.bashrc

设置内容如下:

export PATH=/opt/loongarch64-linux-gnu-2021-04-22/bin:$PATH
export LD_LIBRARY_PATH=/opt/loongarch64-linux-gnu-2021-04-22/lib:/opt/loongarch64-linux-gnu-2021-04-22/loongarch64-linux-gnu/lib:$LD_LIBRARY_PATH
export CROSS_COMPILE=loongarch64-linux-gnu-
export ARCH=loongarch

保存退出。

2、生效环境变量

生效环境变量的方法有两种:

(1) 可以在命令行通过如下命令进行生效操作

#source ./bashrc

(2) 通过重启系统的方式进行生效操作

#reboot

3、查看是否生效

命令行下输入loongarch然后按Tab键,同上文所述。

编译方法

以3A5000平台为例,pmon配置文件为Target/ls3a5000_7a/conf/ls.3a5000_7a。

1、解压源码

# tar xf pmon-loongarch.tgz   

2、拷贝dtc文件

#cp /usr/bin/dtc  ./zloader.3a5000_7a/

3、编译并拷贝pmon环境配置文件

#cd tools;make;cp pmoncfg/pmoncfg /usr/bin

4、进入编译目录

#cd ./zloader.3a5000_7a/

5、编译源码

#make cfg;make tgt=rom

编译完成后,会在当前下生成一个gzrom.bin二进制文件。

烧写方法

编程器烧写方法

从板卡上取出Flash芯片放入编程器的座内,选择编程器中对应的Flash型号,导入需要烧写的二进制文件gzrom.bin。点击烧写并等待烧写完毕。由于烧写器型号不一,这里不再进行详细介绍,根据烧写器的说明进行操作即可。

PMON在线烧写方法

1、将烧写的PMON二进制文件gzrom.bin放入U盘。

2、板卡启动之前将U盘插入USB口。

3、启动板卡,等待运行到出现“LOONGSON龙芯”图标,按"c"键。

4、进入pmon的命令行后执行。

pmon> fload  /dev/fs/fat@usb0/gzrom.bin

5、通过输入"reboot"命令重启后即为更新后的pmon固件。

--end--
码字不易,欢迎关注,感谢在看、点赞和转发!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值