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]

同じ失敗に関する別のレポートが見つかりました(このように) しかし、明確な解決策はありません。

ベストアンサー1

おすすめ記事