mirror of
https://github.com/Dichgrem/GKI-build.git
synced 2025-12-16 21:52:00 -05:00
update:build.sh
This commit is contained in:
49
build.sh
49
build.sh
@@ -6,22 +6,41 @@ export ARCH=arm64
|
|||||||
export SUBARCH=arm64
|
export SUBARCH=arm64
|
||||||
export KCONFIG_CONFIG=$PWD/myconfig
|
export KCONFIG_CONFIG=$PWD/myconfig
|
||||||
|
|
||||||
|
# 设置工具链路径变量
|
||||||
|
export CLANG_PATH=~/kernel/toolchains/clang-21/bin
|
||||||
|
export PATH=$CLANG_PATH:$PATH
|
||||||
|
|
||||||
|
# 清理构建目录
|
||||||
|
rm -rf out && mkdir -p out
|
||||||
|
|
||||||
# 生成默认 config
|
# 生成默认 config
|
||||||
make O=out KCONFIG_CONFIG=$KCONFIG_CONFIG olddefconfig
|
make O=out KCONFIG_CONFIG=$KCONFIG_CONFIG olddefconfig
|
||||||
|
|
||||||
# 编译内核,禁用 frame-larger-than 的错误处理
|
# 编译内核
|
||||||
make -j$(nproc) O=out WERROR=0 \
|
make -j$(nproc) O=out \
|
||||||
KCFLAGS="-Wno-error=frame-larger-than= -O3 -pipe" \
|
LLVM=1 \
|
||||||
|
LTO=thin \
|
||||||
|
WERROR=0 \
|
||||||
|
KBUILD_NO_WERROR=1 \
|
||||||
|
CC=clang \
|
||||||
|
AR=llvm-ar \
|
||||||
|
LD=ld.lld \
|
||||||
|
NM=llvm-nm \
|
||||||
|
OBJCOPY=llvm-objcopy \
|
||||||
|
OBJDUMP=llvm-objdump \
|
||||||
|
STRIP=llvm-strip \
|
||||||
|
HOSTCC=clang \
|
||||||
|
HOSTCXX=clang++ \
|
||||||
|
CROSS_COMPILE= \
|
||||||
|
CROSS_COMPILE_ARM32=arm-linux-androideabi- \
|
||||||
|
KCFLAGS="--target=aarch64-linux-gnu -O3 -pipe -Wno-error" \
|
||||||
KCPPFLAGS="-DCONFIG_CC_OPTIMIZE_FOR_PERFORMANCE" \
|
KCPPFLAGS="-DCONFIG_CC_OPTIMIZE_FOR_PERFORMANCE" \
|
||||||
HOSTCFLAGS="-O3 -pipe" \
|
HOSTCFLAGS="-O3 -pipe -Wno-error" \
|
||||||
HOSTCXXFLAGS="-O3 -pipe" \
|
HOSTCXXFLAGS="-O3 -pipe -Wno-error" \
|
||||||
NM=~/kernel/toolchains/clang-14/bin/llvm-nm \
|
2>&1 | tee out/error.log
|
||||||
OBJCOPY=~/kernel/toolchains/clang-14/bin/llvm-objcopy \
|
|
||||||
LD=~/kernel/toolchains/clang-14/bin/ld.lld \
|
tail -n 100 out/error.log
|
||||||
CROSS_COMPILE=~/kernel/toolchains/clang-14/bin/aarch64-linux-gnu- \
|
|
||||||
CROSS_COMPILE_ARM32=~/kernel/toolchains/gcc-arm-4.9/bin/arm-linux-androideabi- \
|
# 记录结束时间
|
||||||
CC=~/kernel/toolchains/clang-14/bin/clang \
|
endtime=$(date +'%Y-%m-%d %H:%M:%S')
|
||||||
AR=~/kernel/toolchains/clang-14/bin/llvm-ar \
|
echo "Build finished at: $endtime"
|
||||||
OBJDUMP=~/kernel/toolchains/clang-14/bin/llvm-objdump \
|
|
||||||
STRIP=~/kernel/toolchains/clang-14/bin/llvm-strip \
|
|
||||||
2>&1 | tee error.log
|
|
||||||
|
|||||||
Reference in New Issue
Block a user