# 01-编译环境搭建

## 1. 编译环境搭建

此编译环境配置 适用 Android/Linux SDK

### 硬件要求

| 系统环境   | 要求          |
| ------ | ----------- |
| 系统版本   | ubuntu22.04 |
| CPU核心数 | 4核以上        |
| 内存容量   | 16GB以上      |
| 硬盘容量   | 200GB以上     |

### 安装依赖软件包

```
$ sudo apt install git bc bison build-essential curl flex libsdl1.2-dev 
$ sudo apt install g++-multilib gcc-multilib gnupg gperf libncurses5-dev 
$ sudo apt install imagemagick lib32ncurses5-dev lib32readline-dev squashfs-tools 
$ sudo apt install lib32z1-dev liblz4-tool xsltproc libssl-dev libwxgtk3.0-gtk3-dev 
$ sudo apt install libxml2 libxml2-utils schedtool lzop pngcrush rsync 
$ sudo apt install yasm zip zlib1g-dev python-is-python3 device-tree-compiler mtd-utils
$ sudo apt install python3-pip gawk openjdk-8-jdk u-boot-tools patchelf expect
$ sudo apt install libncurses5
$ pip install pyelftools
```

> 软件包名称会根据 Ubuntu 版本更新而变化，其他 Ubuntu 版本安装依赖包，需自行通过网络搜索对应的解决方法！

### 获取SDK源码

第一步，从网盘下载对应的SDK源码 tar.gz 包。

```
├── 1-SDK
│   ├── android10.0
│   └── ubuntu1604
```

第二步，拷贝源码压缩包到编译主机目录 （linux环境）。

> 注意事项：
>
> 1. 源码不可放在共享目录下编译
> 2. 编译主机不可用ROOT账号登陆

第三步，解压源码压缩包。

```
mkdir sdk
tar -zxf a133-*.tar.gz -C sdk/
```

> a133-\*.tar.gz 指代解压的代码压缩包

第四步，Git恢复源码目录。

```
cd sdk
git reset --hard
```
