all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Build of attr fails with non-bash shell
@ 2012-12-20 22:34 Andreas Enge
  2012-12-20 23:09 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Enge @ 2012-12-20 22:34 UTC (permalink / raw)
  To: bug-guix

[-- Attachment #1: Type: text/plain, Size: 3915 bytes --]

The build phase of attr fails in my setting:
   guix-daemon --build-users-group=nixbld --chroot-directory=/bin --chroot-
directory=/lib64 --chroot-directory=/lib

with
make[2]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/libmisc'
/bin/sh ../libtool --mode=compile gcc -g -O2 -DDEBUG -funsigned-char -fno-
strict-aliasing -Wall -DVERSION=\"2.4.46\" -
DLOCALEDIR=\"/nix/store/s1y8llipcivyf07j53lkg8v21y4yjazg-
attr-2.4.46/share/locale\" -DPACKAGE=\"attr\" -I../include -D_GNU_SOURCE -
D_FILE_OFFSET_BITS=64   -c quote.c
make[2]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/m4'
make[2]: Nothing to be done for `default'.
make[2]: Leaving directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/m4'
/nix/store/vphh2xg6ky5xi31f683adsmzwxy6qymw-make-3.82/bin/make -C po
make[2]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man'
/nix/store/vphh2xg6ky5xi31f683adsmzwxy6qymw-make-3.82/bin/make -C man1
make[2]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/doc'
/nix/store/a1br58c1z6az38wljw4i45qxgcfsx06a-gzip-1.5/bin/gzip --best -c < 
CHANGES > CHANGES.gz
../libtool: 1: eval: base_compile+= gcc: not found
../libtool: 1: eval: base_compile+= -g: not found
../libtool: 1: eval: base_compile+= -O2: not found
../libtool: 1: eval: base_compile+= -DDEBUG: not found
../libtool: 1: eval: base_compile+= -funsigned-char: not found
../libtool: 1: eval: base_compile+= -fno-strict-aliasing: not found
../libtool: 1: eval: base_compile+= -Wall: not found
make[2]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/po'
/nix/store/6kljhmv1m0r8vvdlqr5vz7rjgpdhi0wc-gettext-0.18.1.1/bin/msgfmt -o 
cs.mo cs.po
make[3]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man/man1'
make[3]: Nothing to be done for `default'.
make[3]: Leaving directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man/man1'
/nix/store/vphh2xg6ky5xi31f683adsmzwxy6qymw-make-3.82/bin/make -C man2
make[2]: Leaving directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/doc'
/nix/store/vphh2xg6ky5xi31f683adsmzwxy6qymw-make-3.82/bin/make -C man3
../libtool: 1: eval: base_compile+= -DVERSION=\"2.4.46\": not found
../libtool: 1: eval: base_compile+= -
DLOCALEDIR=\"/nix/store/s1y8llipcivyf07j53lkg8v21y4yjazg-
attr-2.4.46/share/locale\": not found
/nix/store/6kljhmv1m0r8vvdlqr5vz7rjgpdhi0wc-gettext-0.18.1.1/bin/msgfmt -o 
de.mo de.po
../libtool: 1: eval: base_compile+= -DPACKAGE=\"attr\": not found
../libtool: 1: eval: base_compile+= -I../include: not found
make[3]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man/man3'
../libtool: 1: eval: base_compile+= -D_GNU_SOURCE: not found
make[3]: Nothing to be done for `default'.
make[3]: Leaving directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man/man3'
../libtool: 1: eval: base_compile+= -D_FILE_OFFSET_BITS=64: not found
../libtool: 1: eval: base_compile+= -c: not found
/nix/store/6kljhmv1m0r8vvdlqr5vz7rjgpdhi0wc-gettext-0.18.1.1/bin/msgfmt -o 
es.mo es.po
make[3]: Entering directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man/man2'
make[3]: Nothing to be done for `default'.
make[3]: Leaving directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/man/man2'
/nix/store/vphh2xg6ky5xi31f683adsmzwxy6qymw-make-3.82/bin/make -C man5
libtool: compile: you must specify a compilation command
libtool: compile: Try `libtool --help --mode=compile' for more information.
make[2]: *** [quote.lo] Error 1
make[2]: Leaving directory `/tmp/nix-build-
attr-2.4.46.drv-0/attr-2.4.46/libmisc'
make[1]: *** [libmisc] Error 2
make[1]: *** Waiting for unfinished jobs....

A web search leads me to
   http://trac.osgeo.org/gdal/ticket/4102
It looks as if bash is needed, whereas my /bin/sh is (a symbolic link to)
dash. And indeed compilation succeeds after replacing it by a symbolic link
to bash.

Do you see another way of fixing this problem?

Andreas

[-- Attachment #2: Type: text/html, Size: 13097 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Build of attr fails with non-bash shell
  2012-12-20 22:34 Build of attr fails with non-bash shell Andreas Enge
@ 2012-12-20 23:09 ` Ludovic Courtès
  2012-12-21 10:44   ` Andreas Enge
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2012-12-20 23:09 UTC (permalink / raw)
  To: Andreas Enge; +Cc: bug-guix

Hi,

Andreas Enge <andreas@enge.fr> skribis:

> A web search leads me to
>    http://trac.osgeo.org/gdal/ticket/4102
> It looks as if bash is needed, whereas my /bin/sh is (a symbolic link to)
> dash. And indeed compilation succeeds after replacing it by a symbolic link
> to bash.

Yes, that’s not very surprising.

> Do you see another way of fixing this problem?

For this and related issues, I’m attempting in the ‘core-updates’ branch
to allow builds without /bin/sh in the chroot.  Instead, builds use the
Bash binary that’s explicitly passed as an input.

After some tweaking (more on that later), it can successfully build
everything up to ‘guile-final’.  What remains to be seen is how much
manual tweaking each package will require.  I’m hoping it will be
reasonable, but it doesn’t come for free either, as can be seen from the
commits that adjust packages in ‘core-updates’.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Build of attr fails with non-bash shell
  2012-12-20 23:09 ` Ludovic Courtès
@ 2012-12-21 10:44   ` Andreas Enge
  2012-12-21 11:00     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Enge @ 2012-12-21 10:44 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: bug-guix

[-- Attachment #1: Type: text/plain, Size: 486 bytes --]

Am Freitag, 21. Dezember 2012 schrieb Ludovic Courtès:
> For this and related issues, I’m attempting in the ‘core-updates’ branch
> to allow builds without /bin/sh in the chroot.  Instead, builds use the
> Bash binary that’s explicitly passed as an input.

If it can be done, this would be a nice feature. I wondered if one could
simply add "bash" to the inputs, but this is clearly not enough since it
does not yet imply that bash is used during the build.

Andreas

[-- Attachment #2: Type: text/html, Size: 2431 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Build of attr fails with non-bash shell
  2012-12-21 10:44   ` Andreas Enge
@ 2012-12-21 11:00     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2012-12-21 11:00 UTC (permalink / raw)
  To: Andreas Enge; +Cc: bug-guix

Andreas Enge <andreas@enge.fr> skribis:

> Am Freitag, 21. Dezember 2012 schrieb Ludovic Courtès:
>> For this and related issues, I’m attempting in the ‘core-updates’ branch
>> to allow builds without /bin/sh in the chroot.  Instead, builds use the
>> Bash binary that’s explicitly passed as an input.
>
> If it can be done, this would be a nice feature. I wondered if one could
> simply add "bash" to the inputs, but this is clearly not enough since it
> does not yet imply that bash is used during the build.

Right.  The difficulty is that many scripts use #!/bin/sh, and some
programs (glibc, awk, etc.) have functions that explicitly launch /bin/sh.

Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-12-21 11:00 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-20 22:34 Build of attr fails with non-bash shell Andreas Enge
2012-12-20 23:09 ` Ludovic Courtès
2012-12-21 10:44   ` Andreas Enge
2012-12-21 11:00     ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.