Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

buildroot "make all" fails with: fakeroot error / This may be due to a lack of SYSV IPC support. (and update-alternatives fix does not work) #4067

Closed
kdubious opened this issue May 25, 2019 · 4 comments

Comments

@kdubious
Copy link

  • Your Windows build number: (Type ver at a Windows Command Prompt)
    Microsoft Windows [Version 10.0.17763.503]

  • What you're doing and what's happening: (Copy&paste the full set of specific command-line steps necessary to reproduce the behavior, and their output. Include screen shots if that helps demonstrate the problem.)
    trying to build an ARM os with:
    :buildroot-2019.02$ make all

  • What's wrong / what should be happening instead:
    fails with:
    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/tar/tar.mk:16: recipe for target '/home/kdubious/buildroot/buildroot-2019.02/output/images/rootfs.tar' failed make[1]: *** [/home/kdubious/buildroot/buildroot-2019.02/output/images/rootfs.tar] Error 1 Makefile:84: recipe for target '_all' failed make: *** [_all] Error 2

  • Strace of the failing command, if applicable: (If some_command is failing, then run strace -o some_command.strace -f some_command some_args, and link the contents of some_command.strace in a gist here).
    Not sure what should go here.

I saw this solution in several places:
sudo update-alternatives --set fakeroot /usr/bin/fakeroot-tcp

but it did not work for me.

@kdubious kdubious changed the title buildroot "make all" fails with: fakeroot error / This may be due to a lack of SYSV IPC support. buildroot "make all" fails with: fakeroot error / This may be due to a lack of SYSV IPC support. (and update-alternatives fix does not work) May 25, 2019
@therealkenc
Copy link
Collaborator

therealkenc commented May 25, 2019

#1443 #2465 (ed, and) #3629

@kdubious
Copy link
Author

I have a fix:
fs/common.mk:109

Add:
cp -f /`which fakeroot-tcp/` $$(HOST_DIR)/bin/fakeroot

before

PATH=$$(BR_PATH) FAKEROOTDONTTRYCHOWN=1 $$(HOST_DIR)/bin/fakeroot -- $$(FAKEROOT_SCRIPT)

got it from here.

@rc-matthew-l-weber
Copy link

The fix is to update the host-fakeroot build to use the tcp transport by default in buildroot. I'm working on upstreaming this fix.

--- a/package/fakeroot/fakeroot.mk
+++ b/package/fakeroot/fakeroot.mk
@@ -16,6 +16,8 @@ HOST_FAKEROOT_CONF_ENV =
ac_cv_header_sys_capability_h=no
ac_cv_func_capset=no

+HOST_FAKEROOT_CONF_OPTS = --with-ipc=tcp
+
FAKEROOT_LICENSE = GPL-3.0+
FAKEROOT_LICENSE_FILES = COPYING

@rc-matthew-l-weber
Copy link

rc-matthew-l-weber commented Jul 11, 2019

Got a bit more background and figuring out right path based on some additional history.

https://bugs.busybox.net/show_bug.cgi?id=11366

Proposed fix
http://patchwork.ozlabs.org/project/buildroot/list/?series=119044

jow- added a commit to openwrt/openwrt that referenced this issue Sep 9, 2020
Some environments, e.g. first gen WSL, do not support SysV IPC.
Enforce the use of TCP transport instead which should be universally
available.

Fixes: FS#3317
Ref: microsoft/WSL#4067
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
aiamadeus pushed a commit to immortalwrt/immortalwrt that referenced this issue Sep 10, 2020
Some environments, e.g. first gen WSL, do not support SysV IPC.
Enforce the use of TCP transport instead which should be universally
available.

Fixes: FS#3317
Ref: microsoft/WSL#4067
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
jollaman999 pushed a commit to jollaman999/openwrt that referenced this issue Oct 1, 2020
Some environments, e.g. first gen WSL, do not support SysV IPC.
Enforce the use of TCP transport instead which should be universally
available.

Fixes: FS#3317
Ref: microsoft/WSL#4067
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants