guile build issue under Mac OS X

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Marius Schamschula
Owner
unassigned
Submitted by
Marius Schamschula
Severity
normal
M
M
Marius Schamschula wrote on 13 Apr 2013 16:16
(address . bug-guile@gnu.org)
5B6BB6BC-4207-47FA-924C-D0E0E96F570B@gmail.com
Hi there,

I just tried building guile 2.0.9 under three versions of Mac OS X (10.6.8, 10.7.5 and 10.8.3). In all cases I get the following error:

<snip>
Making all in lib
make[2]: Entering directory `/private/tmp/guile-2.0.9/lib'
make[2]: ../build-aux/install-sh: Command not found
make[2]: *** [arpa/inet.h] Error 127
make[2]: Leaving directory `/private/tmp/guile-2.0.9/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/private/tmp/guile-2.0.9'
make: *** [all] Error 2
</snip>

Notes:
* the tile /private/tmp/guile-2.0.9/build-aux/install-sh does exist and is executable.
* /usr/include/arpa/inet.h is also available, so no CPPFLAGS should be needed

Any ideas?

--
Marius Schamschula
L
L
Ludovic Courtès wrote on 14 Apr 2013 15:52
(name . Marius Schamschula)(address . mschamschula@gmail.com)(address . 14201@debbugs.gnu.org)
87d2tx1ao9.fsf@gnu.org
Hi Marius,

Marius Schamschula <mschamschula@gmail.com> skribis:

Toggle quote (3 lines)
> make[2]: Entering directory `/private/tmp/guile-2.0.9/lib'
> make[2]: ../build-aux/install-sh: Command not found

[...]

Toggle quote (2 lines)
> * the tile /private/tmp/guile-2.0.9/build-aux/install-sh does exist and is executable.

It appears that I made a mistake when building the tarball. Can you
change the first line of build-aux/install-sh to #!/bin/sh and try
again?

(For some reason that line in the tarball would refer to a local file
name instead of /bin/sh. I’ll investigate to see how it ended up here.)

Ludo’.
M
M
Marius Schamschula wrote on 14 Apr 2013 16:01
(name . Ludovic Courtès)(address . ludo@gnu.org)
5B2A3DE2-789A-41BD-876F-A45D0679719F@gmail.com
Ludovic,

Good catch!

I didn't look at #!

On Apr 14, 2013, at 8:52 AM, ludo@gnu.org (Ludovic Courtès) wrote:

Toggle quote (20 lines)
> Hi Marius,
>
> Marius Schamschula <mschamschula@gmail.com> skribis:
>
>> make[2]: Entering directory `/private/tmp/guile-2.0.9/lib'
>> make[2]: ../build-aux/install-sh: Command not found
>
> [...]
>
>> * the tile /private/tmp/guile-2.0.9/build-aux/install-sh does exist and is executable.
>
> It appears that I made a mistake when building the tarball. Can you
> change the first line of build-aux/install-sh to #!/bin/sh and try
> again?
>
> (For some reason that line in the tarball would refer to a local file
> name instead of /bin/sh. I’ll investigate to see how it ended up here.)
>
> Ludo’.

--
Marius Schamschula
L
L
Ludovic Courtès wrote on 14 Apr 2013 16:25
(name . Marius Schamschula)(address . mschamschula@gmail.com)(address . 14201-close@debbugs.gnu.org)
87mwt1yyt5.fsf@gnu.org
Marius Schamschula <mschamschula@gmail.com> skribis:

Toggle quote (4 lines)
> Good catch!
>
> I didn't look at #!

Thanks, and sorry for the inconvenience!

Ludo’.
L
L
Ludovic Courtès wrote on 15 Apr 2013 00:11
(address . 14201@debbugs.gnu.org)(name . Marius Schamschula)(address . mschamschula@gmail.com)
87a9p0yd83.fsf@gnu.org
ludo@gnu.org (Ludovic Courtès) skribis:

Toggle quote (3 lines)
> (For some reason that line in the tarball would refer to a local file
> name instead of /bin/sh. I’ll investigate to see how it ended up here.)

For the record, the problem is that the scripts installed by
‘automake -a’, with Automake from Guix, would contain “patched” shebangs
referring to files under /nix/store:


This is a serious issue that I’ve fixed now.

The Guile 2.0.9 tarball has several scripts in build-aux/ with invalid
shebangs. “Fortunately”, apart from ‘install-sh’, they are normally
invoked as “$SHELL ./the-file”, so the shebang isn’t actually used.

Please accept my apologies...

Ludo’.
?