【一生一芯】PA0:LINUX环境搭建

发布时间 2023-05-31 15:00:07作者: 老吴家的小阿哲

最近申请参与“一生一芯”项目,想要了解一块CPU是怎么设计出来的。花了半天时间跟着PA0一起完成了LINUX环境的配置,特此记录配置的过程。

一、制作Windows & Linux 双系统

由于我使用的是Windows系统的电脑所以要制作一个双系统出来(不推荐使用虚拟机,以前用过驱动之类的东西很麻烦,各种真机不会出现的问题虚拟机会出现),现在制作linux双系统基本没有什么难度,流程和重装系统差不多:

  1. 从ubuntu官网上弄到ubuntu22的镜像;
  2. 通过镜像烧录软件制作启动U盘;
  3. 进BIOS通过启动U盘启动,安装ubuntu22;
  4. 安装完成后根据提示拔掉U盘重启电脑;
  5. 进入BIOS,将ubuntu22的引导设置为最优先

这里要注意几点:我使用的微星笔记本一开始无法进入BIOS,原因是没有关闭电源设置里的快速启动;微星的BIOS里启动项并没有区分Windows和Linux的启动,而直接是从SSD 0启动,在其下方有个UEFI启动项选项,进入后可以调整Linux和Windows启动的优先级。如果不调整Linux为最优先,那么每次启动都会直接进入Windows中。

二、配置Linux软件环境

配置Linux软件环境大致和PA0讲义内容一样。但是编写讲义的人似乎有意锻炼阅读者的能力,很多地方会故意引导使用报错的方式or直接省略一些步骤。因此写这篇随笔的意义就是记录一下完整的配置过程。毕竟互联网存在的意义就是站在前人的肩膀上能看到更远。

1.设置一个root账户

在安装ubuntu的过程中会要求用户设置自己的用户名和密码,此密码用于解锁系统锁屏,并不意味着直接就可以当作root账户的密码使用,因此需要设置一个root密码。

首先使用【Ctrl+Alt+T】快捷键打开终端,在终端中输入:

sudo passwd

然后输入并确认你设置的密码即可

2.换源 & 配置or安装工具

众所周知的原因,在大陆是无法直连谷歌的,不换源很多软件安装无法进行,因此我们需要对ubuntu进行换源。

终端中输入以下命令打开源配置文件:

sudo  gedit   /etc/apt/sources.list

打开后复制以下文本到源文件并保存:

deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
 
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
 
## Pre-released source, not recommended.
# deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
 
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
 
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
 
## Pre-released source, not recommended.
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
 
## Pre-released source, not recommended.
# deb https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
 
deb http://mirrors.163.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse
 
# deb-src http://mirrors.163.com/ubuntu/ jammy main restricted universe multiverse
# deb-src http://mirrors.163.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://mirrors.163.com/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src http://mirrors.163.com/ubuntu/ jammy-backports main restricted universe multiverse
 
## Pre-released source, not recommended.
# deb http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src http://mirrors.163.com/ubuntu/ jammy-proposed main restricted universe multiverse

然后在终端中输入以下命令更新源的配置:

sudo apt-get update
sudo apt-get upgrade

更新完成后可以安装PA 所需要的工具了:

su                                 # use root 
apt-get install build-essential    # build-essential packages, include binary utilities, gcc, make, and so on
apt-get install man                # on-line reference manual
apt-get install gcc-doc            # on-line reference manual for gcc
apt-get install gdb                # GNU debugger
apt-get install git                # revision control system
apt-get install libreadline-dev    # a library used later
apt-get install libsdl2-dev        # a library used later
apt-get install llvm llvm-dev      # llvm project, which contains libraries used later

最后安装世界上最好(难)用的文本编辑器Vim,在终端中输入以下命令:

sudo apt-get install vim

输入以下命令进入vim编辑器:

vim test

进入vim后默认在“Normal”模式(看左下角),此时按下键盘上的 “ i ” 键,进入“Insert”模式,此时可以进行文本输入。在“Insert”模式中,按下键盘上的 “ ESC ” 键即可退出并回到“Normal”模式。在“Normal”模式下输入"  :q  "退出vim编辑器。有关编辑器的使用方法参考了半离的博客

更多使用Vim编辑器的教程可以Baidu或Google。

3.配置中文输入法

由于安装ubuntu的时候选择的是English,所以系统默认是没有中文输入法的。

首先在“Language Support”中安装“Chinese”

然后在终端中输入以下命令:

sudo apt-get install ibus-pinyin

安装完成后,在“Settings”-“Keyboard”中点击“Input Source”下方的加号,选择“Chinese(Intelligent pinyin)”。如果找不到添加的选项可以重启电脑,重启完毕后即可出现。

一系列操作做完之后,会发现在终端中输入法起作用(谁会在终端里用中文啊),但是系统自带的火狐浏览器中还是只能使用英文,这是因为火狐浏览器的系统设置没有支持中文。进入火狐浏览器设置,找到语言,添加中文。重启后火狐浏览器就支持中文输入法了