unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Ricardo Wurmus <rekado@elephly.net>
To: jsmith <jsmith8365@protonmail.com>
Cc: help-guix@gnu.org
Subject: Re: readline problem
Date: Mon, 17 Jan 2022 12:57:54 +0100	[thread overview]
Message-ID: <87k0eywoq5.fsf@elephly.net> (raw)
In-Reply-To: <pg0_pJKTsiQAWdMuQPYq21OXUwhjMec6g-oPDGGpo1_WpL-IFO8F3V19pYoxGK1kCBh5MQGcxALEGGFwIg8dngznb9qsZDeSNosGThuHWwo=@protonmail.com>


jsmith via <help-guix@gnu.org> writes:

> Hi,
> For some code that was previously working I receive the error:
>
> ERROR: In procedure dlopen:
> In procedure dlopen: file
> "/gnu/store/35apwp40n8rnlqyxf7hagwr250nw754w-guile-dbi-2.1.8/lib/libguile-dbi.so",
> message
> "/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/lib/libc.so.6:
> version `GLIBC_2.33' not found (required by
> /gnu/store/z0kk97dcbcj6s8crm3qiwsyz4ry0zqxw-guile-2.2.7/lib/libguile-2.2.so.1)"
>
> I installed glibc_2.33

You should not do this.  It has no effect as Guix will not look around
for what version of glibc (or any other library for that matter) you
might have installed in some profile.  When building software, the
absolute file names of libraries are embedded in the binary — including
the GNU C library.

The problem you describe looks like you have a mixture of packages that
have been linked with different versions of the GNU C library, which
indicates that you used different versions of Guix to build/install
them.

Here an older version of the C library is loaded first because some
package you have is linked with that older version.  Then at a later
point a package demands to use features that only a newer version of the
C library provides, but the older version that has been loaded cannot
satisfy the request.  This problem is not specific to Guix and is shared
by all systems that use dynamic linking.  There is no way to load
different variants of the same library in the same process.

The solution is to make sure that all software that has to work together
uses the same variants of any libraries.  Guix by default only keeps one
variant per library in its set of package definitions, so by using the
same version of Guix for all packages that are used simultaneously will
bypass the problem.

There are different ways out of this problem:

a) use a manifest to ensure that all packages in your profile are
installed with the exact same version of Guix and thus use the same
variants for all libraries

b) upgrade all your packages with the same version of Guix.

c) use a temporary isolated environment, e.g. with “guix shell -C”

Hope this helps!

-- 
Ricardo


  reply	other threads:[~2022-01-17 12:07 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-15  8:13 readline problem jsmith via
2022-01-17 11:57 ` Ricardo Wurmus [this message]
2022-01-18 11:20   ` Wiktor Żelazny
2022-01-18 14:51     ` Ricardo Wurmus
2022-01-19 18:21       ` Wiktor Żelazny
2022-01-19 19:45         ` Ricardo Wurmus
2022-01-28 11:13           ` James Smith
2022-01-28 11:22             ` Ricardo Wurmus
2022-01-30  8:33               ` No upgrade after pull, and Guix philosophy (was: readline problem) Wiktor Żelazny
2022-01-30  8:53                 ` Ricardo Wurmus
2022-01-31 19:16                   ` Wiktor Żelazny
2022-01-31 19:26                     ` Ricardo Wurmus
2022-01-28 12:54             ` readline problem Dr. Arne Babenhauserheide

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87k0eywoq5.fsf@elephly.net \
    --to=rekado@elephly.net \
    --cc=help-guix@gnu.org \
    --cc=jsmith8365@protonmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).