OS学习-uCore实验(一)

本文详细介绍了如何在Ubuntu20.04环境中为RISC-V架构安装C开发工具链(gcc),包括RISC-V工具链的下载、配置和环境变量设置。同时,也指导了如何安装交叉编译工具musl-gcc以及QEMU模拟器的源码编译和配置过程。
摘要由CSDN通过智能技术生成

第零章 环境搭建

Ubuntu20.04.6
VM Pro 17.5

C开发环境搭建(安装好RISC-V配套的gcc)

配置risc-v工具链

# 选择一个常用的路径直接下载预编译好的Risc-v工具链
cd  /usr/local
sudo wget https://static.dev.sifive.com/dev-tools/freedom-tools/v2020.08/riscv64-unknown-elf-gcc-10.1.0-2020.08.2-x86_64-linux-ubuntu14.tar.gz
# 解压缩
sudo tar xzf riscv64-unknown-elf-gcc-10.1.0-2020.08.2-x86_64-linux-ubuntu14.tar.gz
# 文件名太长,改短
sudo mv riscv64-unknown-elf-gcc-10.1.0-2020.08.2-x86_64-linux-ubuntu14 riscv64-unknown-elf-gcc
# 配置环境变量
echo 'export PATH="/usr/local/riscv64-unknown-elf-gcc/bin:$PATH"' >> ~/.bashrc
# 为了让更改立即生效 执行如下命令
source ~/.bashrc
# 检验是否配置成功 ...gcc version 10.1.0 (SiFive GCC 10.1.0-2020.08.2) 
riscv64-unknown-elf-gcc -v

安装用于交叉编译的musl-gcc

# 继续在当前路径下操作 
#<!-- 链接失效可以更换链接--注意版本为10.2.1就行-->
sudo wget -O riscv64-linux-musl-cross.tgz "https://cloud.tsinghua.edu.cn/f/fb3c598e7e214a828e6b/?dl=1"
# 解压缩
sudo tar xzf riscv64-linux-musl-cross.tgz
# 配置环境变量
echo 'export PATH="/usr/local/riscv64-linux-musl-cross/bin:$PATH"' >> ~/.bashrc
# 为了让更改立即生效 执行如下命令
source ~/.bashrc
# 检验是否成功 ..gcc version 10.2.1 20210227 (GCC) 
riscv64-linux-musl-gcc -v

安装相关工具

# 项目使用cmake搭建,因此还需要安装cmake
sudo apt install cmake

QEMU安装(从源码手动编译安装 Qemu 模拟器)

# 如果是第一次启动虚拟机,需要执行
sudo apt update
sudo apt upgrade
# 安装编译所需的依赖包
sudo apt install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev \
              gawk build-essential bison flex texinfo gperf libtool patchutils bc ninja-build \
              zlib1g-dev libexpat-dev pkg-config  libglib2.0-dev libpixman-1-dev git tmux python3
# 下载源码包
# 如果链接失效,可以使用官网链接下载并提醒助教更新云盘地址: https://download.qemu.org/qemu-7.0.0.tar.xz
wget -O qemu-7.0.0.tar.xz "https://cloud.tsinghua.edu.cn/f/8ba524dbede24ce79d06/?dl=1"
# 解压缩
tar xJf qemu-7.0.0.tar.xz
# 编译安装并配置 RISC-V 支持
cd qemu-7.0.0
# 确定配置
./configure --target-list=riscv64-softmmu,riscv64-linux-user
# 编译
make -j$(nproc)
# 将编译生成'/usr/local/qemu-7.0.0/build'加入环境变量

echo 'export PATH="/usr/local/qemu-7.0.0/build/:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/qemu-7.0.0/build/riscv64-softmmu:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/qemu-7.0.0/build/riscv64-linux-user:$PATH"' >> ~/.bashrc
# 为了让更改立即生效 执行如下命令
source ~/.bashrc
# 检验
qemu-system-riscv64 --version
qemu-riscv64 --version

拉取源代码

# 回到桌面
cd $HOME/Desktop
# 拉取 源码
git clone https://github.com/LearningOS/uCore-Tutorial-Code-2024S.git
# 进入源码目录
cd uCore-Tutorial-Code-2024S
# 切换到不需要处理用户代码的 ch1 分支
git checkout ch1
# 运行
make run LOG=debug

参考资料

uCore-Tutorial-Guide-2024S文档
rCore-Tutorial-Book-v3 3.6.0-alpha.1 文档

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值