我一直在使用 buildroot 2018.02.1 编译嵌入式系统的内核。内核菜单配置过去渲染得很好,但在某些时候它不再正确渲染,看起来像这样:
我尝试完全删除 buildroot 文件夹并重新启动,但无济于事。 buildroot menuconfig 渲染正常,我的其他内核菜单配置似乎也渲染正常,例如:
我尝试export NCURSES_NO_UTF8_ACS=1
在启动内核menuconfig之前运行,但它没有任何效果(尽管它确实影响buildroot 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=
有什么想法吗?
编辑:如果我手动进入 output/build/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)" \