fix dependency check logic cause config always disabled
[lunaix-os.git] / docs / tutorial / 0-教程介绍和环境搭建.md
1 ## 简介\r
2 \r
3 本教程会对lunaix-os源代码进行解读,希望能帮助到一些OS爱好者。\r
4 \r
5 为了防止漏掉一些情况,笔者也是从一个新的虚拟机进行搭建。\r
6 \r
7 注意lunaix-os搭建环境已经不需要编译gcc、qemu、bochs了,可以用**版本为11的gcc**进行编译lunaix-os源代码。\r
8 \r
9 ## 开始\r
10 \r
11 首先准备一个Ubuntu22系统,换好源\r
12 \r
13 ```bash\r
14 sudo apt-get update\r
15 ```\r
16 \r
17 **qemu**安装\r
18 \r
19 ```bash\r
20 sudo apt-get install qemu-system\r
21 ```\r
22 \r
23 接下来安装gdb插件**pwndbg**(方便调试,也可以不安装),虽然lunaix-os最近也写了自己的插件,但是计划后期再介绍和使用\r
24 \r
25 ```bash\r
26 sudo apt-get install git\r
27 git clone https://github.com/pwndbg/pwndbg\r
28 cd pwndbg\r
29 ./setup.sh\r
30 ```\r
31 \r
32 检查`~/.gdbinit` ,如果暂时不需要pwndbg可以用`#` 注释`~/.gdbinit`里面的内容\r
33 \r
34 ```bash\r
35 cat ~/.gdbinit\r
36 \r
37 source /home/ffreestanding/pwndbg/gdbinit.py\r
38 ```\r
39 \r
40 ## 测试\r
41 \r
42 下面测试lunaix-os的环境\r
43 \r
44 首先创建虚拟磁盘镜像\r
45 \r
46 ```bash\r
47 cd lunaix-os\r
48 mkdir machine\r
49 cd machine\r
50 qemu-img create -f vdi disk0.vdi 128M\r
51 ```\r
52 \r
53 安装依赖\r
54 \r
55 ```bash\r
56 sudo apt-get install xorriso\r
57 sudo apt-get install mtools\r
58 ```\r
59 \r
60 修改虚拟磁盘镜像的路径\r
61 \r
62 打开lunaix-os/makeinc/qemu.mkinc,修改disk0.vdi路径\r
63 \r
64 ```\r
65 -drive id=disk,file="/XXX/disk0.vdi",if=none \\r
66 ```\r
67 \r
68 编译\r
69 \r
70 ```bash\r
71 cd lunaix-os\r
72 make debug-qemu\r
73 \r
74 pwndbg> c\r
75 ```\r
76 \r
77 成功启动\r
78 \r
79 ## FAQ\r
80 \r
81 **1.编译时出错怎么解决?**\r
82 \r
83 推荐使用Ubuntu**22**自带的gcc、并且安装好依赖。\r