guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Daemon update


From: Alexander Vorobiev
Subject: Re: Daemon update
Date: Wed, 27 May 2015 15:10:59 -0500

Hi, 
I modified the files (to use my paths for the cache and store) and ran guix-daemon as root. Now it got much, much further! But still failed, it seems while building perl. Here is the end of the log file:

In unknown file:
   ?: 5 [load-compiled/vm "/home/alex/.cache/guile/ccache/2.0-LE-8-2.0/home/alex/src/guix/build-aux/make-binary-tarball.scm.go"]
In build-aux/make-binary-tarball.scm:
  38: 4 [#<procedure 21c0840 ()>]
In guix/store.scm:
 986: 3 [run-with-store # ...]
In build-aux/make-binary-tarball.scm:
  41: 2 [#<procedure 3961960 at build-aux/make-binary-tarball.scm:40:7 (state)> #]
In guix/store.scm:
 933: 1 [#<procedure 4ed3f30 at guix/store.scm:932:28 (store)> #]
 624: 0 [build-things # #]

guix/store.scm:624:0: In procedure build-things:
guix/store.scm:624:0: Throw to key `srfi-34' with args `(#<condition &nix-protocol-error [message: "|   |   |   bind mounting `/dev/full' to `/shared/shape_tier3/commo/local/guix/store/828rlmpkg4bi5i28lif2a1af7g4s62yq-perl-5.16.1.drv.chroot/dev/full'" status: 1] 4b4cae0>)'.
Makefile:4331: recipe for target 'guix-binary.x86_64-linux.tar.xz' failed
make: [guix-binary.x86_64-linux.tar.xz] Error 1 (ignored)

/dev/full seems to be where is it supposed to be. 

I also tried to use --disable-chroot but it also failed while building perl. The first error message seems to be during perl's configure run:

Checking your choice of C compiler and flags for coherency...
I've tried to compile and run the following simple program:

#include <stdio.h>
int main() { printf("Ok\n"); return(0); }

I used the command:

        gcc -o try -O2 -fno-strict-aliasing -pipe -fstack-protector -I/shared/shape_tier3/common/local/guix/store/idc1i3zmd0i04h3n9ii9pz1k1wi7z16z-glibc-bootstrap-0/include -fstack-protector -L/shared/shape_tier3/common/local/guix/store/idc1i3zmd0i04h3n9ii9pz1k1wi7z16z-glibc-bootstrap-0/lib try.c -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
         ./try

and I got the following output:

/shared/shape_tier3/common/local/guix/store/714jwgzxf49qw2ysv8p9zz80b1q8bv5n-binutils-bootstrap-0/bin/ld: cannot find -lgdbm
/shared/shape_tier3/common/local/guix/store/714jwgzxf49qw2ysv8p9zz80b1q8bv5n-binutils-bootstrap-0/bin/ld: cannot find -ldb
collect2: error: ld returned 1 exit status
I can't compile the test program.
(The supplied flags or libraries might be incorrect.)

You have a BIG problem.  Shall I abort Configure [y]
Ok.  Stopping Configure.


Thanks,
Alex


On Wed, May 27, 2015 at 10:18 AM, Ludovic Courtès <address@hidden> wrote:
Alexander Vorobiev <address@hidden> skribis:

> Ok, I have just tried to build the binary tarball on a VM where I
> reproduced all the paths I want (basically, instead of /gnu I want
> /shared/shape_tier3/common/local/guix) and which has c++11 compliant gcc --
> that also failed.

What failed exactly?

Note that ‘make guix-binary.x86_64-linux.tar.xz’ produces a tarball that
uses the exact same store directory as the host Guix.  So if you want to
produce a binary tarball with a custom store directory, you first need
to build Guix --with-store-dir=/custom/store.

If, in addition, you want a custom $localstatedir, then at least the
‘guix’ recipe in (gnu packages package-management) must be adjusted, as
well as the “/var” in ‘self-contained-tarball’ in (gnu system install).

> I pulled today's git and ran guix-daemon --no-substitutes. The error
> seems to be "unable to fork: Operation not permitted". I am running
> guix-daemon as myself

When running guix-daemon unprivileged, you need to pass --disable-chroot
(EACCES is returned by clone(2) here since we ask for separate name
spaces, which only root or someone with CAP_SYS_ADMIN can do.)

It’s better to use run it as root though (info "(guix) Invoking
guix-daemon").

Thanks,
Ludo’.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]