[Top][All Lists]

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

bug#35691: [bug-guix] remote configure failure due to bad pathnames for

From: Ludovic Courtès
Subject: bug#35691: [bug-guix] remote configure failure due to bad pathnames for crt*.o
Date: Wed, 15 May 2019 18:29:06 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Hi Nelson,

(Please keep the bug Cc’d.)

"Nelson H. F. Beebe" <address@hidden> skribis:

> Here is what I find about installed gcc-related packages:
>       $ guix package --list-installed |grep gcc
>       gccgo   4.9.4   out     
> /gnu/store/7108fl31hfj9lb4y76g89sxdb43c1wpc-gccgo-4.9.4
>       gcc-objc        8.3.0   out     
> /gnu/store/44r4xl10nmix25bv6bv974r280vc232c-gcc-objc-8.3.0
>       gcc-objc++      8.3.0   out     
> /gnu/store/wqycqqp4almqcmmsj7gys56lyk9girvq-gcc-objc++-8.3.0
>       gcc-bootstrap   0       out     
> /gnu/store/fgarfy5392vz5hik1ag5b8ccv0r4cm01-gcc-bootstrap-0
>       gcc-toolchain   9.1.0   out     
> /gnu/store/aqv6njg05w2yqh8krgrjy0wcbfxb4nn3-gcc-toolchain-9.1.0

It’s crowded here.  Please remove everything but ‘gcc-toolchain’.

Now, if you want to have Objective-C support, you of course have to
install ‘gcc-objc’ and/or ‘gcc-objc++’.  However, you’ll have to make
sure that they come after ‘gcc-toolchain’ in your profile, like so:

  guix install gcc-toolchain gcc-objc

> Maybe it is related to another problem that I wanted to eventually
> raise on a guix list.  Namely, after installing the new GUIX 1.0 VM, I
> found that /usr/bin, /usr/sbin, and /sbin do not exist, and /bin
> contains only /bin/sh.  Even after numerous "guix install" runs, /bin
> continues to have only one entry.


> This seems bizarre, because it is long-standing practice that
> shell scripts should set PATH to a limited value to avoid
> trojan attacks, and things like "/bin/rm foo" should always work.

The GNU build system purposefully makes no assumptions on the location
of tools: ‘configure.ac’ files have AC_PROG_SED, AC_PATH_PROG, and
similar calls.

> On your GUIX systems, do you have a reasonably populated /bin?  Ditto
> the other three.

No.  By default, one gets /bin/sh, and nothing more.

This is a radical departure from Unix tradition, but (1) GNU’s Not Unix
;-), and (2) the lack of a global name space gives rise to many
interesting properties: transactional upgrades and rollbacks are now
possible, per-user profiles, on-the-fly environments with ‘guix
environment’, etc.

>   (packages
>     (list (specification->package "nss-certs")))

Note that this is bogus, due to
<https://issues.guix.gnu.org/issue/35541>, which will be fixed in
Guix 1.0.1 in the coming days.

You should write:

  (packages (append (list (specification->package "nss-certs"))

to get the full set of “base packages” (Coreutils, grep, etc.) in $PATH
by default.

Once you’ve made that change, you have to reconfigure your system:

  guix system reconfigure /etc/config.scm



reply via email to

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