이 섹션은 Repo를 사용하여 빌드할 수 없는 커널에 적용됩니다. 특히 아래 표에는 수동으로 빌드해야 하는 커널 소스 및 바이너리의 이름과 위치가 나와 있습니다.
기기 | AOSP 트리의 바이너리 위치 | 소스 위치 | 빌드 구성 |
---|---|---|---|
easel | 해당 없음 | kernel/arm64 | mnh_prod_defconfig |
angler | device/huawei/angler-kernel | kernel/msm | angler_defconfig |
bullhead | device/lge/bullhead-kernel | kernel/msm | bullhead_defconfig |
shamu | device/moto/shamu-kernel | kernel/msm | shamu_defconfig |
fugu | device/asus/fugu-kernel | kernel/x86_64 | fugu_defconfig |
volantis | device/htc/flounder-kernel | kernel/tegra | flounder_defconfig |
hammerhead | device/lge/hammerhead-kernel | kernel/msm | hammerhead_defconfig |
flo | device/asus/flo-kernel/kernel | kernel/msm | flo_defconfig |
deb | device/asus/flo-kernel/kernel | kernel/msm | flo_defconfig |
manta | device/samsung/manta/kernel | kernel/exynos | manta_defconfig |
mako | device/lge/mako-kernel/kernel | kernel/msm | mako_defconfig |
grouper | device/asus/grouper/kernel | kernel/tegra | tegra3_android_defconfig |
tilapia | device/asus/grouper/kernel | kernel/tegra | tegra3_android_defconfig |
maguro | device/samsung/tuna/kernel | kernel/omap | tuna_defconfig |
toro | device/samsung/tuna/kernel | kernel/omap | tuna_defconfig |
panda | device/ti/panda/kernel | kernel/omap | panda_defconfig |
stingray | device/moto/wingray/kernel | kernel/tegra | stingray_defconfig |
wingray | device/moto/wingray/kernel | kernel/tegra | stingray_defconfig |
crespo | device/samsung/crespo/kernel | kernel/samsung | herring_defconfig |
crespo4g | device/samsung/crespo/kernel | kernel/samsung | herring_defconfig |
소스 다운로드
적절한 git clone
명령어를 사용하여 빌드하려는 커널의 소스를 다운로드하세요. 예를 들어, 다음 명령어는 HiKey 참조 보드에 사용되는 hikey
커널을 복제합니다.
git clone https://android.googlesource.com/kernel/hikey-linaro
커널 프로젝트의 전체 목록은 kernel 디렉터리에서 찾을 수 있습니다. 다음은 일반적으로 사용되는 커널 및 각각의 git clone
명령어입니다.
exynos
프로젝트는 Nexus 10용 커널 소스를 포함하고 있으며, 삼성 Exynos 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/exynos
goldfish
프로젝트는 에뮬레이션된 플랫폼의 커널 소스를 포함합니다.
git clone https://android.googlesource.com/kernel/goldfish
hikey-linaro
프로젝트는 HiKey 참조 보드에 사용되며, HiSilicon 620 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/hikey-linaro
msm
프로젝트는 ADP1, ADP2, Nexus One, Nexus 4, Nexus 5, Nexus 6, Nexus 5X, Nexus 6P, Nexus 7(2013), Pixel 및 Pixel XL의 소스를 포함하고 있으며, Qualcomm MSM 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/msm
omap
프로젝트는 PandaBoard 및 Galaxy Nexus에 사용되며, TI OMAP 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/omap
samsung
프로젝트는 Nexus S에 사용되며, 삼성 Hummingbird 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/samsung
tegra
프로젝트는 Xoom, Nexus 7(2012) 및 Nexus 9용이며, NVIDIA Tegra 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/tegra
x86_64
프로젝트는 Nexus Player용 커널 소스를 포함하고 있으며, Intel x86_64 칩셋 작업의 출발점으로 사용할 수 있습니다.
git clone https://android.googlesource.com/kernel/x86_64
커널 빌드
기본 분기(예: master
)를 빌드하지 않으려면 빌드 전에 해당하는 커밋을 체크아웃해야 합니다. 사전 빌드된 커널 바이너리의 커널 버전을 식별하는 방법은 커널 버전 식별을 참조하세요. 이제 커널을 빌드할 준비가 되었습니다. 다음 빌드 명령어는 hikey
커널을 사용합니다.
cd hikey-linaro
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-android-
make hikey_defconfig
make
다른 커널을 빌드하려면 hikey-linaro
를 빌드하려는 커널의 이름으로 바꾸고 hikey_defconfig
를 상응하는 defconfig 파일의 이름으로 바꿉니다.
이미지는 arch/arm64/boot/
디렉터리로 출력되고 커널 바이너리는 arch/arm64/boot/dts/hisilicon/hi6220-hikey.dtb
파일로 출력됩니다. 새로 빌드한 커널을 AOSP 이미지에 삽입하는 방법은 커널 실행의 안내를 따르세요.