Closed 1291945816 closed 2 weeks ago
启动镜像,并远程openEuler虚拟机:
openEuler
./start_vm.sh
ssh root@192.128.122.120 -p 12055
前期已经把对应的镜像文件下到本地,本次不重复相关下载过程。
直接从源安装: dnf install neofetch
dnf install neofetch
提示:没找到对应的包,说明仓库并没有构建好的包
前往开源仓库,对应的Wiki 文档提供了几种方案:
neofetch
鉴于在仓库中没有这个包,选择第一种方案:
git
clone
dnf install git
git clone https://github.com/dylanaraps/neofetch
进入到目录后,发现一个可执行的脚本文件,直接执行即可:
前往https://build.openeuler.openatom.cn/ 注册账户。
安装osc:dnf install osc
osc
dnf install osc
第一次执行osc对应的指令时,发现没配置账户信息,遂进行登录:
此处输入账户信息会报401错误,查资料发现其实是api接口不对,账户注册的信息并不在api.opensuse.org上。
401
api.opensuse.org
需要修改osc的账户配置信息以及具体的api地址:
[general] apiurl = https://build.openeuler.openatom.cn no_verify = 1 [https://build.openeuler.openatom.cn] user=your username pass=your passwd credentials_mgr_class=osc.credentials.ObfuscatedConfigFileCredentialsManager
配置完信息后,再次执行osc ll | grep psomng查看OBS 服务器上个人的源信息:
osc ll | grep psomng
选择home:pSomng:branches:openEuler:Mainline:RISC-V这个项目中的curl进行构建:osc co home:pSomng:branches:openEuler:Mainline:RISC-V/curl
home:pSomng:branches:openEuler:Mainline:RISC-V
curl
osc co home:pSomng:branches:openEuler:Mainline:RISC-V/curl
从OBS 服务器中获取源码:osc up -S
osc up -S
直接进行构建:osc build --local-package standard_riscv64 riscv64,会提示缺少build的。
osc build --local-package standard_riscv64 riscv64
build
再执行:dnf install build即可。
dnf install build
然后再重新执行构建:
选择使用docker进行加速任务二的构建,所以需要在主机侧环境上安装并配置osc以及docker。
docker
这里特别容易陷入误区,就是以为在qemu仿真的环境里去安装docker进行加快构建。但其实不然,docker本质上也是提供一种虚拟化的环境,与qemu应该在构建过程中的级别是一样的,区别在于:一个是先进行qemu虚拟架构后,再利用本地架构构建软件包,而另一个是 本地采用docker进行构建。个人感觉来说,毕竟qemu-system*是系统级仿真,性能更低。
qemu
qemu-system*
执行osc build --local-package standard_riscv64 riscv64 --vm-type=docker采用docker加速构建,可能会报以下错误:
osc build --local-package standard_riscv64 riscv64 --vm-type=docker
这里的原因是perl缺少了Data-Dumper模块,手动编译一个即可:
perl
Data-Dumper
wget https://www.cpan.org/modules/by-module/Data/Data-Dumper-2.173.tar.gz tar -zxvf Data-Dumper-2.173.tar.gz cd Data-Dumper-2.173 perl Makefile.PL make make install
然后再次构建即可:
相比第二次构建来说,显然这次的时间缩短了接近4倍。
good work
壹·任务一
启动镜像,并远程
openEuler
虚拟机:./start_vm.sh
ssh root@192.128.122.120 -p 12055
直接从源安装:
dnf install neofetch
提示:没找到对应的包,说明仓库并没有构建好的包
前往开源仓库,对应的Wiki 文档提供了几种方案:
neofetch
包:https://github.com/dylanaraps/neofetch/wiki/Installation#osdistro-packages鉴于在仓库中没有这个包,选择第一种方案:
git
并配好相关的公钥便于后续的clone
操作:dnf install git
clone
仓库源码:git clone https://github.com/dylanaraps/neofetch
进入到目录后,发现一个可执行的脚本文件,直接执行即可:
贰·任务二
前往https://build.openeuler.openatom.cn/ 注册账户。
安装
osc
:dnf install osc
第一次执行
osc
对应的指令时,发现没配置账户信息,遂进行登录:需要修改osc的账户配置信息以及具体的api地址:
配置完信息后,再次执行
osc ll | grep psomng
查看OBS 服务器上个人的源信息:选择
home:pSomng:branches:openEuler:Mainline:RISC-V
这个项目中的curl
进行构建:osc co home:pSomng:branches:openEuler:Mainline:RISC-V/curl
从OBS 服务器中获取源码:
osc up -S
直接进行构建:
osc build --local-package standard_riscv64 riscv64
,会提示缺少build
的。再执行:
dnf install build
即可。然后再重新执行构建:
叁·任务三
选择使用
docker
进行加速任务二的构建,所以需要在主机侧环境上安装并配置osc
以及docker
。执行
osc build --local-package standard_riscv64 riscv64 --vm-type=docker
采用docker
加速构建,可能会报以下错误:这里的原因是
perl
缺少了Data-Dumper
模块,手动编译一个即可:然后再次构建即可:
相比第二次构建来说,显然这次的时间缩短了接近4倍。