O kernel do Linux deve ser compilado com -Werror?

1

Eu sempre construí o kernel Linux com -Wall -Werror para garantir que eu não perca nenhum aviso que eu apresentar durante o desenvolvimento. No entanto, parece que, a partir de 4.18, a compilação ARM padrão não será concluída com -Werror devido a um syscall não implementado. Se eu remover -Werror , a compilação será concluída com êxito.

É razoável esperar que o kernel construa com -Werror habilitado? Isso deve ser relatado como um bug?

Etapas para reproduzir:

# 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

Erro encontrado:

$ 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]

Eu encontrei outros relatórios dessa mesma falha ( assim ), mas nenhuma solução clara.

    
por cj8scrambler 13.08.2018 / 22:50

0 respostas