
私は組み込みシステムのカーネルをコンパイルするためにbuildroot 2018.02.1を使用してきました。カーネルメニューの設定はうまくレンダリングされましたが、ある時点で正しくレンダリングを停止し、次のように見えました。
buildrootフォルダを完全に削除して再起動しようとしましたが、役に立ちませんでした。 buildroot menuconfigがうまくレンダリングされ、他のカーネルメニュー設定もうまくレンダリングされているようです。たとえば、次のようになります。
export NCURSES_NO_UTF8_ACS=1
カーネルmenuconfigを起動する前に実行しようとしましたが、何の効果もありませんでした(ビルドルートmenuconfigに影響を与えましたが)。
私のロケールは次のとおりです。
$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=
どんなアイデアがありますか?
編集する:手動で出力/ビルド/linux-XXXフォルダに移動して呼び出すとARCH=arm make menuconfig
大丈夫です。問題は、Buildrootがmenuconfigを呼び出す方法に関連しているようです。
答え1
私は同じ問題を経験しました。 menuconfig、linux-menuconfigはうまくレンダリングされましたが、uboot-menuconfigはそうではありませんでした。
まず、ncurseswライブラリがホストにインストールされていることを確認してください。
pkg-config --cflags ncursesw
Debian には対応するライブラリがないため、インストールする必要があります。
sudo apt-get install libncursesw5-dev
これが誰かに役立つことを願っています。
答え2
linux.mkからLDFLAGSを削除します。
LINUX_MAKE_FLAGS = \
- HOSTCC="$(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS)" \
+ HOSTCC="$(HOSTCC) $(HOST_CFLAGS)" \
ARCH=$(KERNEL_ARCH) \
INSTALL_MOD_PATH=$(TARGET_DIR) \
CROSS_COMPILE="$(TARGET_CROSS)" \