help-guix
[Top][All Lists]
Advanced

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

Re: 'guix build [P]' followed by 'guix install /gnu/store/[...]' vs. 'gu


From: Ludovic Courtès
Subject: Re: 'guix build [P]' followed by 'guix install /gnu/store/[...]' vs. 'guix install [P]'
Date: Sun, 10 Nov 2024 00:31:12 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

Hi, Thomas!

Thomas Schwinge <tschwinge@baylibre.com> skribis:

>>     $ guix install -p bi 
>> /gnu/store/lahbqdidl3ynasd0vzxz2i0dmgh0v16i-gcc-toolchain-4.8.5
>>     [...]
>>
>> ..., where '/gnu/store/[...]-gcc-toolchain-4.8.5' is the main ("out")
>> output, which should -- per my understanding -- correspond to directly
>> 'guix install'ing:
>>
>>     $ guix install -p i gcc-toolchain@4.8.5
>>     [...]
>>
>> But now compare the two installations:
>>
>>     $ diff -ru bi/ i/

[...]

>>     --- bi/manifest 1970-01-01 01:00:01.000000000 +0100
>>     +++ i/manifest  1970-01-01 01:00:01.000000000 +0100
>>     @@ -9,4 +9,40 @@
>>          (("gcc-toolchain"
>>            "4.8.5"
>>            "out"
>>     -      
>> "/gnu/store/lahbqdidl3ynasd0vzxz2i0dmgh0v16i-gcc-toolchain-4.8.5"))))
>>     +      "/gnu/store/lahbqdidl3ynasd0vzxz2i0dmgh0v16i-gcc-toolchain-4.8.5"
>>     +      (search-paths
>>     +        (("C_INCLUDE_PATH" ("include") ":" directory #f)
>>     +         ("CPLUS_INCLUDE_PATH"
>>     +          ("include/c++" "include")
>>     +          ":"
>>     +          directory
>>     +          #f)

[...]

>> This means that the 'bi' installation isn't usable.

This may sound surprising but it’s expected.

The reason is that when you run:

  guix install gcc-toolchain

‘gcc-toolchain’ is a live package with metadata that Guix uses when it
builds the profile, in particular data about search paths.

However, when you run:

  guix package -i /gnu/store/…

then all Guix sees is an inert store item with no associated metadata.
This is why it ends up creating a profile without search path info.

This is one of the reasons why I would recommend against that second
method.  It might be useful as a last resort but should be avoided as
much as possible.

(For development, I’d also recommend ‘guix shell’ over ‘guix install’!)

HTH,
Ludo’.



reply via email to

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