使用 Buildroot 为 Raspberry Pi 3 构建 rootfs 系统时出错 - 缺少 SysV IPC 支持
Error while building rootfs system for Raspberry Pi 3 using Buildroot - lack of SysV IPC support
我正在尝试为 Raspberry Pi 3 构建 Buildroot 映像,如页面所示:
https://github.com/buildroot/buildroot/tree/f8ff7ab0be1cd3aa846829dc234d8c67b1bda0dc/board/raspberrypi.
我正在为 Linux 使用 Windows 子系统,我已将其升级到 Ubuntu 16.04.02 版本。
Buildroot 版本为 2017.05.2.
但是,当 运行ning make 时,我在 bash 中观察到以下输出:
/home/rijad/buildroot-2017.05.2/output/host/usr/bin/fakeroot --
/home/rijad/buildroot-2017.05.2/output/build/_fakeroot.fs
fakeroot, while creating message channels: Function not implemented
This may be due to a lack of SYSV IPC support.
fakeroot: error while starting the `faked' daemon.
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
fs/ext2/ext2.mk:42: recipe for target '/home/rijad/buildroot-2017.05.2/output/images/rootfs.ext2' failed
make[1]: *** [/home/rijad/buildroot-2017.05.2/output/images/rootfs.ext2] Error 1
Makefile:79: recipe for target '_all' failed
make: *** [_all] Error 2
有什么方法可以在 WSL 上启用 SysV IPC 支持,或者 运行 具有 TCP IPC 支持的 fakeroot?
谢谢!
已在 Linux 的 Windows 子系统中打开一个问题:
https://github.com/Microsoft/BashOnWindows/issues/2465
SYSV IPS 消息队列尚未在当前内核中实现:
The lack of Sysvipc message queues breaks fakeroot
运行 我自己也遇到了同样的问题并与之抗争了一段时间我在构建文件系统之前将以下命令添加到 运行
cp -f /usr/bin/fakeroot-tcp /path-to-buildroot/output/host/usr/bin/fakeroot
在buildroot 2017.08.1上,我修改fs/common.mk:109
如下,成功制作rootfs!
# before
PATH=$$(BR_PATH) $$(HOST_DIR)/bin/fakeroot -- $$(FAKEROOT_SCRIPT)
# after
if [ `uname -r | grep "Microsoft"` ] ; then \
cp -f `which fakeroot-tcp` $$(HOST_DIR)/bin/fakeroot ; fi
我正在尝试为 Raspberry Pi 3 构建 Buildroot 映像,如页面所示: https://github.com/buildroot/buildroot/tree/f8ff7ab0be1cd3aa846829dc234d8c67b1bda0dc/board/raspberrypi.
我正在为 Linux 使用 Windows 子系统,我已将其升级到 Ubuntu 16.04.02 版本。
Buildroot 版本为 2017.05.2.
但是,当 运行ning make 时,我在 bash 中观察到以下输出:
/home/rijad/buildroot-2017.05.2/output/host/usr/bin/fakeroot --
/home/rijad/buildroot-2017.05.2/output/build/_fakeroot.fs
fakeroot, while creating message channels: Function not implemented
This may be due to a lack of SYSV IPC support.
fakeroot: error while starting the `faked' daemon.
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
fs/ext2/ext2.mk:42: recipe for target '/home/rijad/buildroot-2017.05.2/output/images/rootfs.ext2' failed
make[1]: *** [/home/rijad/buildroot-2017.05.2/output/images/rootfs.ext2] Error 1
Makefile:79: recipe for target '_all' failed
make: *** [_all] Error 2
有什么方法可以在 WSL 上启用 SysV IPC 支持,或者 运行 具有 TCP IPC 支持的 fakeroot?
谢谢!
已在 Linux 的 Windows 子系统中打开一个问题: https://github.com/Microsoft/BashOnWindows/issues/2465
SYSV IPS 消息队列尚未在当前内核中实现:
The lack of Sysvipc message queues breaks fakeroot
运行 我自己也遇到了同样的问题并与之抗争了一段时间我在构建文件系统之前将以下命令添加到 运行
cp -f /usr/bin/fakeroot-tcp /path-to-buildroot/output/host/usr/bin/fakeroot
在buildroot 2017.08.1上,我修改fs/common.mk:109
如下,成功制作rootfs!
# before
PATH=$$(BR_PATH) $$(HOST_DIR)/bin/fakeroot -- $$(FAKEROOT_SCRIPT)
# after
if [ `uname -r | grep "Microsoft"` ] ; then \
cp -f `which fakeroot-tcp` $$(HOST_DIR)/bin/fakeroot ; fi