2017-08-02 465 views
1

我正在嘗試爲Raspberry Pi 3構建Buildroot圖像,如下頁所示: https://github.com/buildroot/buildroot/tree/f8ff7ab0be1cd3aa846829dc234d8c67b1bda0dc/board/raspberrypi使用Buildroot構建Raspberry Pi 3的rootfs系統時出錯 - 缺少SysV IPC支持

我正在使用Linux的Windows子系統,我已升級到Ubuntu 16.04.02的版本。
Buildroot的版本是2017.05.2。

但是,在運行時使我發現下面在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的運行?

謝謝!

+1

這個錯誤將是由於Windows內核未與SYSV IPC支持內置。 –

+0

如果您在運行之前嘗試'./configure'make – EsmaeelE

+0

您是否試圖在Raspberry Pi上構建圖像?如果是的話,你應該考慮使用交叉編譯器在桌面PC上構建它。 –

回答

0

自己跑到相同的問題上,並與它搏鬥了一會兒,我添加了以下命令在構建文件系統之前運行

cp -f /usr/bin/fakeroot-tcp /path-to-buildroot/output/host/usr/bin/fakeroot 
+1

謝謝,它解決了問題! – Ricky12

0

在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