Linux 커널을 -Werror로 빌드해야 합니까?

Linux 커널을 -Werror로 빌드해야 합니까?

-Wall -Werror저는 개발 중에 발생한 경고를 놓치지 않기 위해 Linux 커널을 구축해 왔습니다 . 그러나 4.18부터 -Werror구현되지 않은 시스템 호출로 인해 기본 ARM 빌드가 완료되지 않는 것 같습니다. 삭제하면 -Werror빌드가 성공적으로 완료됩니다.

커널이 -Werror활성화된 상태로 구축될 것으로 기대하는 것이 합리적입니까? 이것을 버그로 보고해야 합니까?

재현 단계:

# Set PATH and CROSS_COMPILE to appropriate toolchain
# export CROSS_COMPILE=arm-linux-gnueabihf-
# export PATH=${TOOLCHAINDIR}/bin:${PATH}

ARCH=arm KCFLAGS="-Werror" make defconfig KBUILD_DEFCONFIG=ti_sdk_am3x_release_defconfig
ARCH=arm KCFLAGS="-Werror" make zImage

오류가 발생했습니다:

$ ARCH=arm KCFLAGS="-Werror" make zImage
scripts/kconfig/conf  --syncconfig Kconfig
/bin/sh: 1: Syntax error: "|" unexpected
  CC      kernel/bounds.s
  CC      arch/arm/kernel/asm-offsets.s
  CALL    scripts/checksyscalls.sh
<stdin>:1332:2: error: #warning syscall io_pgetevents not implemented [-Werror=cpp]

동일한 실패에 대한 다른 보고서를 찾았습니다(이와 같이) 그러나 명확한 해결책은 없습니다.

관련 정보