> ## 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

要在 Ubuntu 上安装 Docker，请按照 [Docker 安装指南](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository) 中的说明进行操作。

```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}
getent group docker > /dev/null || sudo groupadd docker
id -nG "$USER" | grep -qw docker || sudo usermod -aG docker "$USER"
newgrp docker
```

<Note>
  重启终端，或注销后重新登录，以使更新后的 docker 组成员身份生效。
</Note>

### 验证安装

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

### 拉取 kmake-image Docker 镜像

首选方法是从镜像仓库拉取预构建的 `kmake-image`：

```bash theme={null}
docker pull artifacts.codelinaro.org/clo-420-qli-registry/kmake-image:ver.1.0
```

<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)
