> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs-staging.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 前提条件与主机设置

在构建或修改 Qualcomm<sup>®</sup> Linux 内核之前设置您的主机计算机。
以下要求适用于基于 Yocto 的和独立的构建工作流程。

## 主机计算机要求

**表:主机最低要求**

| 要求     | 值                                |
| ------ | -------------------------------- |
| 架构     | x86\_64                          |
| CPU    | 四核(Intel i7-2600 3.4 GHz 或同等配置)  |
| RAM    | 16 GB                            |
| 可用磁盘空间 | 300 GB(建议 Yocto 构建的交换分区 > 32 GB) |
| 操作系统   | Ubuntu 22.04 LTS                 |

<Note>
  支持在虚拟机上构建,但速度明显较慢。有关 VM 设置说明,请参阅 [Qualcomm Linux 虚拟机设置指南](https://dragonwingdocs.qualcomm.com/Key-Documents/Virtual-Machine-Setup/virtual-machine-setup-overview)。
</Note>

## 必需工具

**表:必需工具版本**

| 工具       | 最低版本    |
| -------- | ------- |
| Git      | 1.8.3.1 |
| Python   | 3.10.2  |
| GCC      | 10.1    |
| GNU Make | 4.0     |
| Kas      | 4.8     |

### 安装主机包

运行以下命令安装所需的包和 `kas` 构建工具:

```bash theme={null}
sudo apt update
sudo apt install build-essential chrpath cpio debianutils diffstat \
    file gawk gcc git iputils-ping libacl1 locales python3 \
    python3-git python3-jinja2 python3-pexpect python3-pip \
    python3-subunit socat texinfo unzip wget xz-utils zstd

sudo apt install pipx
pipx ensurepath
```

重新启动您的 shell(或运行 `source ~/.bashrc`),以便 `pipx` 二进制文件在您的 PATH 中,然后安装 `kas`:

```bash theme={null}
# kas 4.8 or later is required
pipx install kas
```

或者,下载 `kas-container` 脚本以在任何 Linux 发行版上的 Docker 容器内运行构建:

```bash theme={null}
wget -qO kas-container \
    https://raw.githubusercontent.com/siemens/kas/refs/tags/5.1/kas-container
chmod +x kas-container
```

### 配置区域设置

```bash theme={null}
sudo locale-gen en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
```

### 配置 git

```bash theme={null}
git config --global user.email <your-email>
git config --global user.name "Your Name"

# Recommended settings to handle large repositories
git config --global http.postBuffer 1048576000
git config --global http.maxRequestBuffer 1048576000
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
```

## 独立内核开发前提条件

独立构建工作流程使用 `kmake-image` Docker 容器来提供交叉编译工具链、`systemd ukify` 和镜像打包脚本。
在运行独立构建之前必须在主机上安装 Docker。

### 安装 Docker CE

```bash theme={null}
sudo apt update
sudo apt install ca-certificates curl gnupg

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
    | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" \
    | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
```

### 将您的用户添加到 docker 组

```bash theme={null}
sudo usermod -aG docker $USER
newgrp docker
```

### 验证安装

```bash theme={null}
docker run --rm hello-world
```

<Note>
  `kmake-image` 容器构建和 shell 别名设置在 [不使用 Yocto 构建内核](/zh/System/Kernel/build-kernel-standalone) 中介绍。
</Note>

## 仓库访问

Qualcomm Linux 内核和 `meta-qcom` 层在 GitHub 上公开托管,无需特殊凭据:

* 内核源代码:[https://github.com/qualcomm-linux/kernel](https://github.com/qualcomm-linux/kernel)
* meta-qcom 层:[https://github.com/qualcomm-linux/meta-qcom](https://github.com/qualcomm-linux/meta-qcom)
